-5

我的数据:

ID color price
1   red   120
2   red   NA 
3   blue  80 
4   green 97 
5   black 100

我需要用颜色变量中的“红色”替换“黑色”,并用平均价格替换 NA

我尝试了以下代码 mydata$color[(mydata$color=="black")]<- "red" # 但我得到了 NULL

对于第二个问题,我使用了 mydata$price[which(is.na(mydata$price))]<- mean(mydata$price) # 但它没有任何改变!

谢谢您的帮助。

4

1 回答 1

0

您可以使用这种方法来获得所需的内容:

df = within(df, {
   variable[variable == "string"] = "string2"
   variable[is.na(variable)] = mean(variable)
 })

这里的诀窍是,您可以使用创建一个子集,[]并使用[] =.

于 2013-04-19T14:19:59.630 回答