我是 R 的新手,遇到了在数据框中正确填充一列数据的问题。我正在使用一系列 if / else if 语句基于另一列 (P_Value) 填充两列 (P_Score 和 P_Class)。
i<- 0
nr<- nrow(myData)
while(i<nr){
i<-1+i
if(toString(myData$P_Value[i])=="NA"){ myData$P_Score[i] <- myData$P_Value[i]
} else if (as.numeric(toString(myData$P_Value[i]))<5){
myData$P_Score[i] <- 1; myData$P_Class[i] <- "Minimal Depression";
} else if (as.numeric(toString(myData$P_Value[i]))<10){
myData$P_Score[i] <- 2; myData$P_Class[i] <- "Mild Depression";
} else if (as.numeric(toString(myData$P_Value[i]))<15){
myData$P_Score[i] <- 3; myData$P_Class[i] <- "Moderate Depression";
} else if (as.numeric(toString(myData$P_Value[i]))<20){
myData$P_Score[i] <- 4; myData$P_Class[i] <- "Moderate-Severe Depression";
} else
myData$P_Score[i] <- 5; myData$P_Class[i] <- "Severe Depression";
}
Run Code Online (Sandbox Code Playgroud)
然而,这并没有给我想要的结果,相反,我得到了这个:
P_Value P_Score …Run Code Online (Sandbox Code Playgroud)