나는 코드를 다시 작성하려고하는데, 충분히 단순한 걸림돌로 달려 가고 있지만 인터넷에 대해 꽤 많은 시간을 들여서 알아낼 수는 없습니다 그래서 당신이 줄 수있는 도움에 감사드립니다.lapply "NAs는 할당 된 과제에서 허용되지 않습니다"
NA가 들어있는 데이터가 있습니다. 이 데이터를 사용하여 다시 코드화하고 싶지만 계속 "NAs는 하위 할당에 허용되지 않습니다."라는 오류가 계속 발생합니다. 예제 데이터 세트를 만들려고하면서 나는 "의미있는 요소"가 없다는 경고를 추가로 실행하고 있습니다. 어떤 도움을 주시면 감사하겠습니다.
내 가짜 데이터에는 "var1"과 "var2"(문자와 때로는 누락 됨) 및 "var3"(숫자)의 세 가지 변수가 있습니다. beta가 0보다 큰 경우 "var1"의 값을 포함하고 베타가 0보다 작은 경우 "var2"의 값을 포함하는 네 번째 변수를 생성하려고합니다. VAR1 또는 VAR2이없는 경우에, 나는 새 변수는없는 것으로합니다 :
var1<-c("A","T",NA,"G","C")
var2<-c("G","A",NA,"A","G")
var3 <-c(-.1,3,-4,5,-3)
df=as.data.frame(cbind(var1,var2,var3))
df$newVar[df$var3>0]=df$var1[df$var3>0]
df$newVar[df$var3<0]=df$var2[df$var3<0]
는 내가 얻을하는 빨간색의 무리입니다 :
df$newVar[df$var3>0]=df$var1[df$var3>0]
Error in df$newVar[df$var3 > 0] = df$var1[df$var3 > 0] :
NAs are not allowed in subscripted assignments
In addition: Warning messages:
1: In Ops.factor(df$var3, 0) : > not meaningful for factors
2: In Ops.factor(df$var3, 0) : > not meaningful for factors
df$newVar[df$var3<0]=df$var2[df$var3<0]
Error in df$newVar[df$var3 < 0] = df$var2[df$var3 < 0] :
NAs are not allowed in subscripted assignments
In addition: Warning messages:
1: In Ops.factor(df$var3, 0) : < not meaningful for factors
2: In Ops.factor(df$var3, 0) : < not meaningful for factors
어떤 조언을 주시면 감사하겠습니다. 고맙습니다.
무엇을 다시 코딩 하시겠습니까? 원하는 결과가 여기에 도움이 될 것입니다. –
'ifelse' 문을 사용해 보셨습니까? –
[R의 여러 데이터 프레임을 통해 레코딩]의 복제본이 가능합니다. (http://stackoverflow.com/questions/18323236/recoding-over-multiple-data-frames-in-r) – Metrics