从 R 中的 SPSS 文件中提取标签

Extracting labels from SPSS files in R

我使用 haven 包将 SPSS 文件导入 R。正如您在下一张图片中看到的,所有变量都有与之关联的标签(例如“2016 年管理年”):

我正在尝试读取这些标签,但是使用这行代码 returns NULL:

attr(X36799_0001_Data[,15], "label")

ant 这行代码也 returns NULL:

attributes(X36799_0001_Data)$variable.labels

任何关于我做错了什么的信息都将不胜感激。谢谢!

只要改变子集化的方式,它就会起作用。

attr(X36799_0001_Data[[15]], "label")

这与R子集的方式有关。这里有一个深入的解释:Subsetting - Advanced R.

您还可以使用包 labelled 来处理 SPSS 标签。在这种情况下,使用 var_label.

var_label(X36799_0001_Data[, 15])

尝试 "labelled" 包来获取标签

data_label <- t(as.data.frame(标记为::var_label(数据)))

write.csv(data_label, "data_label.csv")

希望对您有所帮助