我有一个字符串变量,其中包含"(空值)"对于缺少数据的情况。我想重新编码"(空值)"只是失踪,而不是说#34;(空值)"。我试图写一个循环来摆脱这些(空值)条目,我不断收到错误"错误:意外'}'在"}"
for (row in data){
if terminate_reason == "(Null Value)"
recode(data$terminate_reason, "(Null Value)" = NA)
}
wtf确实R认为那里有一个额外的花括号吗? PS-我希望在解决这个问题之后我会遇到其他错误,因为我是R的新手并且不知道我在做什么,但是我无法通过这个。< / p>
答案 0 :(得分:2)
您的代码存在许多问题:
if
语句需要附上{}
符号。if
还需要在逻辑表达式周围加上()
个符号。recode
函数的结果未存储在任何位置(函数不会更改值到位)。利用R的自然矢量化会更简单。而不是if
循环内的for
,你可以将这一切都集中在一行:
data$terminate_reason[data$terminate_reason == '(Null Value)'] <- NA
应该这样做,但要确保&#34; terminate_reason&#34;列是字符,而不是因素。