我正在尝试将SAS脚本转换为R以学习R.以下是SAS中的脚本。
if continent=1 and (country=5 or country=10) then rate = 8
以下是我对数据框的尝试,名为 data :
data$rate[(continent==1) & (country==5 | country==10)] <- 8
或者:
data$rate[(continent==1) & country %in% c(5,10)] <-8
不幸的是,尝试不能正确生成结果。结果显示当大陆= 1或国家= 5或国家= 10时的速率8。我想在组合R中的逻辑运算符时我错了。
有人可以帮我解决这个问题吗?非常感谢!
注意:我使用了上面的附加(数据),因为我懒得再次重写数据。
答案 0 :(得分:0)
看起来您的问题是您没有从数据框data
中的数据中调用变量。这可能是您的错误的原因。要解决此问题,请执行以下操作在数据框中指定变量:
data$rate[(data$continent==1 & (data$country==5 | data$country==10))] <- 8