在R中,使用&组合列之间有什么区别?与方括号[] []?

时间:2013-01-25 17:00:42

标签: r

在R中,有什么区别:

summary(airquality$Solar.R[(airquality$Ozone>31)&(airquality$Temp>90)])

VS。

summary( (airquality[airquality$Ozone>31,][airquality$Temp>90,])$Solar.R)

我的结果略有不同,212.0 vs. 212.8 这更准确,表现更好。

1 个答案:

答案 0 :(得分:12)

你的第一个命令是正确的;第二个命令不正确。第二个命令首先选择airquality的{​​{1}}行,然后选择与Ozone > 31airquality对应的行。问题是您的数据已经被子集化了一次,因此行不会在第二次排列。如果你这样做,数字摘要与你的第一个版本一致:

Temp > 90

虽然它更多summary((airquality[airquality$Ozone>31,][airquality[airquality$Ozone>31,]$Temp>90,])$Solar.R) s。

坚持使用第一个版本。