【发布时间】:2015-05-21 17:10:58
【问题描述】:
这对某人来说可能很简单,但我似乎无法让它为我的生活服务。我试过使用 cut 和 ifelse 但我得到的关卡没有我想要的值。任何想法将不胜感激。这是一些假数据:
o5<-c(1,0,2,0,0,NA)
o6<-c(NA,0,NA,2,0,NA)
o7<-c(0,0,NA,2,2,1)
ID<-seq(1,6,1)
d1<-cbind(ID,o5,o6,o7)
ID o5 o6 o7
[1,] 1 1 NA 0
[2,] 2 0 0 0
[3,] 3 2 NA NA
[4,] 4 0 2 2
[5,] 5 0 0 2
[6,] 6 NA NA 1
我正在尝试将 o5,o6,o7 组合成一个 o_all 变量,如下所示:
ID o5 o6 o7 o_all
[1,] 1 1 NA 0 5
[2,] 2 0 0 0 0
[3,] 3 2 NA NA 5
[4,] 4 0 2 2 6
[5,] 5 0 0 2 7
[6,] 6 NA NA 1 7
每个 o 变量表示学生的年级水平。如果他们对该等级有一个非零值,他们应该在 o_all 中获得等级级别的值(这是见证特定行为开始的等级)。如果它们表示两个或多个等级,那么我选择最早的值(ID #4 就是一个例子)。我也有很多缺失的数据需要计算。谢谢!
【问题讨论】:
-
这些都对我有用,只需稍作调整。谢谢!
标签: r if-statement cut