[英]Creating new column in a dataframe based on other columns in r
我有一个 dataframe 有 144 列和很多 NA,我想根据当前列创建具有二分值的新列。 因此,如果列 1:126 具有值,则新列获得“Q”,如果列 126:144 具有值,则新列获得“R”。 如果两者都有值(1:126 和 126:144),它也会得到“R”。 如果 non 具有值,则新列将获得“NA”。
好的,假设您的 data.frame 被称为 df,使用下面的示例:
df = data.frame(matrix(runif(144*100),ncol=144))
df[df < 0.99] = NA
然后你可以这样做:
df$new_column = NA
df$new_column[rowSums(!is.na(df[,1:126]))>0] = "Q"
df$new_column[rowSums(!is.na(df[,126:144]))>0] = "R"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.