如何在R中选择个案?

时间:2020-01-27 17:44:31

标签: r spss

我渴望从SPSS到R。

SPSS中使用的常见命令是应用过滤。有人可以建议我为什么收到错误消息吗?

2019dataset=read.spss("C:\\SPSS data\\2019dataset.sav")

selected_2019dataset <- 2019dataset[ which(2019dataset$hhweight > 0 & 2019dataset$income~=0 & 2019dataset$age > 16 & 2019dataset$age < 59),]

我收到一个错误消息,说有一个意外的'='

我尝试以SPSS语法复制的过滤器是:

SELECT IF ((hhweight > 0) AND (income~=0) AND (age > 16 AND age <59)).

我一直在关注以下示例:

https://www.statmethods.net/management/subset.html

感谢任何建议。

谢谢。

2 个答案:

答案 0 :(得分:3)

代替2019dataset$income~=0

如果您想“不等于”,请尝试2019dataset$income!=0

2019dataset$income==0(如果要“等于”

空格可能使阅读更清晰,因此2019dataset$income != 02019dataset$income == 0会有所改善,您可能不需要which,但这并不重要

答案 1 :(得分:2)

我从SPSS过渡到R,我更喜欢使用tidyverse程序包,我认为它更直观。

您的代码应类似于:

library(tidyverse)    
selected_2019dataset <- 2019dataset %>%
    filter(hhweight > 0 & income == 0 & age > 16 & age < 59)
相关问题