我使用的图书馆:
library(ggplot2)
library(dplyr)
library(statsr)
```{r}
factor_sc <- table(gss1$class, gss1$getahead)
factor_sc <- addmargins(factor_sc)
factor_sc
```
我写这个,输出是:
Hard Work Both Equally Luck Or Help Other Sum
Lower Class 1063 368 299 0 1730
Working Class 10229 3221 1870 0 15320
Middle Class 9914 3624 1612 0 15150
Upper Class 701 265 100 0 1066
No Class 0 0 0 0 0
Sum 21907 7478 3881 0 33266
我想对此数据进行卡方推断,以便删除“其他”和“否”类。
但是,我已经使用以下命令将其删除:
```{r}
gss1 <- gss %>% filter(!is.na(getahead),
!is.na(class), class != "No Class", getahead !="Other")
```
为什么Other
和No class
出现在我的表格中?
答案 0 :(得分:1)
这里有些误解。 filter
用于删除数据集的行。您想要的是将class
的{{1}}更改为NA
。 "No Class"
是您所需要的。
尝试以下代码:
mutate
可能需要使用gss1 <- gss %>%
mutate(class = ifelse(class=="No Class", NA, class),
getahead = ifelse(getahead =="Other", NA, getahead )) %>%
select(class, getahead) %>%
table %>%
chisq.test
而不是NA_character_
。
您可以通过编写以下代码从NA
中删除这些行和列:
factor_sc
答案 1 :(得分:0)
对于列,尝试简单的df $ column <-NULL;对于行,尝试类似的操作。 如果尝试是为了取得更大的好运。