最近在用R整理数据的时候遇到一个问题,表述有点难,请大家看下面具体的数据吧
原始数据是:
ID St Q1 Q2 Q3 Q4 Q5 Q6 Q7 Q8 Q9 Q10 gen ho gu qu
1 a NA NA NA NA NA NA 1 2 3 4 1 2 1 2
2 b NA NA NA NA NA NA NA NA 1 2 3 4 1 2
3 c 1 2 3 NA NA NA NA NA NA NA 1 2 1 2
4 d 1 NA 2 3 NA NA NA NA NA NA 3 4 1 2
5 e 1 2 3 4 5 NA NA NA NA NA 1 2 1 2
6 f NA NA NA 1 2 3 4 NA NA NA 3 4 1 2
中间有很多的NA,想把它整理成下面的模式(就是把数字都提前到比较靠前的列,并且保持他们的顺序不变,示意如下):
ID St Q1 Q2 Q3 Q4 Q5 Q6 Q7 Q8 Q9 Q10 gen ho gu qu
1 a 1 2 3 4 NA NA NA NA NA NA 1 2 1 2
2 b 1 2 NA NA NA NA NA NA NA NA 3 4 1 2
3 c 1 2 3 NA NA NA NA NA NA NA 1 2 1 2
4 d 1 2 3 NA NA NA NA NA NA NA 3 4 1 2
5 e 1 2 3 4 5 NA NA NA NA NA 1 2 1 2
6 f 1 2 3 4 NA NA NA NA NA NA 3 4 1 2
像上面那样整理好后,直接把所有都是NA那一列删除了,如下:
ID St Q1 Q2 Q3 Q4 Q5 gen ho gu qu
1 a 1 2 3 4 NA 1 2 1 2
2 b 1 2 NA NA NA 3 4 1 2
3 c 1 2 3 NA NA 1 2 1 2
4 d 1 2 3 NA NA 3 4 1 2
5 e 1 2 3 4 5 1 2 1 2
6 f 1 2 3 4 NA 3 4 1 2
请问大家知道这个怎么在R中实现吗?我想了两天了也没想出来,先谢谢大家帮忙了