说我有数据框
group<-c("NA","HIGH","LOW","NA","HIGH")
a<-c(14,16,21,34,45)
dataset<-data.frame(group,a)
我想创建一个名为&#34; a_high&#34;的新列。如果&#34; group&#34;很高我想要&#34; a&#34;的相应值。退回&#34; a_high&#34;。如果&#34; group&#34;是&#34;低&#34;或&#34; NA&#34;我想&#34; NA&#34;退回&#34; a_high&#34;。我希望这是有道理的。
答案 0 :(得分:0)
你走了:
dataset$a_high <- ifelse(dataset$group == 'HIGH', dataset$a, NA)
输出:
> dataset group a a_high 1 NA 14 NA 2 HIGH 16 16 3 LOW 21 NA 4 NA 34 NA 5 HIGH 45 45