0

我使用包中的read_sav函数haven来导入 SPSS 文件。因此我有列名和关联标签(类标签)。

当我使用 对数据框进行子集化时,我丢失了标签subset。我可以使用索引的解决方法,data[i]但这种行为是否是错误?

这是一个简单的例子。

DataForExample <- structure(list(q0001_0001 = structure(c(2, NA, 5, 4, NA), label = "être plus rapide", class = "labelled", labels = structure(c(1, 
2, 3, 4, 5), .Names = c("non, pas du tout", "non, pas vraiment", 
"oui, un peu", "oui, tout à fait", "je ne sais pas"))), q0001_0002 = structure(c(NA, 
3, NA, 4, 2), label = "être plus fiable", class = "labelled", labels = structure(c(1, 
2, 3, 4, 5), .Names = c("non, pas du tout", "non, pas vraiment", 
"oui, un peu", "oui, tout à fait", "je ne sais pas")))), .Names = c("q0001_0001", 
"q0001_0002"), class = c("tbl_df", "tbl", "data.frame"), row.names = c(NA, 
-5L))

View(DataForExample) # OK
Toto <- subset(DataForExample, select = q0001_0001)
View(Toto) # NOK : the labels disappeared
Toto2 <- DataForExample[1]
View(Toto2) # OK

谢谢

4

1 回答 1

2

与您之前关于排序的问题的答案相同。您需要加载支持类的子集操作的包labelled。最好在haven. 至少有两个包具有这种支持:Hmiscexpss. 不需要额外的操作,只需library(expss)library(Hmisc)

于 2016-11-06T23:24:57.290 回答