mydata:
ID color price
1 red 120
2 red NA
3 blue 80
4 green 97
5 black 100
我需要在颜色变量中将“black”替换为“red”,并且 用平均价格替换NA
我尝试过以下代码 mydata $ color [(mydata $ color ==“black”)]< - “red”#但我得到NULL
对于第二期,我用过 mydata $ price [其中(is.na(mydata $ price))]< - 均值(mydata $ price)#但它不会改变任何东西!
感谢您的帮助。
答案 0 :(得分:0)
您可以使用此方法获得所需内容:
df = within(df, {
variable[variable == "string"] = "string2"
variable[is.na(variable)] = mean(variable)
})
这里的技巧是您可以使用[]
创建子集,并使用[] =
再次为该子集分配值。