r-如何使用expss包中的cro函数删除交叉表输出中未使用的值标签



我使用的是天堂标记的数据帧(导入数据集时,变量已经有了值标签(。我需要运行两个变量的许多交叉表。我使用expss包中的cro函数,因为默认情况下会显示值标签,并计算加权交叉表

但是,我得到的输出表显示了未使用的值标签。如何在不手动删除每个变量的未使用值标签的情况下删除未使用的标签?(顺便说一句:默认情况下,expss包中的fre函数有这个参数:drop_unused_labels = TRUE,但cro函数没有(

下面是一个可复制的示例:

# Dataframe 
df <- data.frame(sex = c(1, 2, 99, 2, 1, 2, 2, 2, 1, 2),
agegroup= c(1, 2, 99, 2, 3, 3, 2, 2, 2, 1),
weight = c(100, 20, 400, 300, 50, 50, 80, 250, 100, 100))
library(expss)
# Variable labels
var_lab(df$sex) <-"Sex"
var_lab(df$agegroup) <-"Age group"
# Value labels 
val_lab(df$sex) <- make_labels("1 Male 
2 Female
97 Didn't know
98 Didn't respond
99 Abandoned survey")
val_lab(df$agegroup) <- make_labels("1 1-29
2 30-49
3 50 and more
97 Didn't know
98 Didn't respond
99 Abandoned survey")
cro(df$sex, df$agegroup, weight = df$weight)
|     |                  | Age group |       |             |             |                |                  |
|     |                  |      1-29 | 30-49 | 50 and more | Didn't know | Didn't respond | Abandoned survey |
| --- | ---------------- | --------- | ----- | ----------- | ----------- | -------------- | ---------------- |
| Sex |             Male |       100 |   100 |          50 |             |                |                  |
|     |           Female |       100 |   650 |          50 |             |                |                  |
|     |      Didn't know |           |       |             |             |                |                  |
|     |   Didn't respond |           |       |             |             |                |                  |
|     | Abandoned survey |           |       |             |             |                |              400 |
|     |     #Total cases |         2 |     5 |           2 |             |                |                1 |

我想去掉名为‘Didn't know’‘Didn't respond’的列和行。

您可以使用drop_unused_labels函数来删除未使用的标签。

library(expss)
df1 <- drop_unused_labels(df)
cro(df1$sex, df1$agegroup, weight = df1$weight)
     
|     |                  | Age group |       |             |                  |
|     |                  |      1-29 | 30-49 | 50 and more | Abandoned survey |
| --- | ---------------- | --------- | ----- | ----------- | ---------------- |
| Sex |             Male |       100 |   100 |          50 |                  |
|     |           Female |       100 |   650 |          50 |                  |
|     | Abandoned survey |           |       |             |              400 |
|     |     #Total cases |         2 |     5 |           2 |                1 |

最新更新