📅  最后修改于: 2023-12-03 15:25:13.336000             🧑  作者: Mango
R 中的 haven
包可以帮助你将 data.frame
对象写入为 SPSS 的 .sav 文件。这个过程包括了先将数据类型转换为 SPSS 认可的类型,然后将数据写入为 .sav 文件。下面的示例代码演示了如何使用 haven
包将 Dataframe
写入为 .sav 文件。
# 安装 haven 包
install.packages("haven")
# 载入 haven 包
library(haven)
# 创建一个 DataFrame
df <- data.frame(
id = 1:5,
name = c("John", "Jane", "Bob", "Mary", "Adam"),
gender = c("male", "female", "male", "female", "male"),
age = c(32, 25, 48, 19, 54),
height = c(1.72, 1.65, 1.81, 1.58, 1.69),
weight = c(70, 55, 85, 48, 75)
)
# 指定 SPSS 支持的类型
df$id <- as_factor(df$id)
df$name <- as_factor(df$name)
df$gender <- as_factor(df$gender)
# 将 DataFrame 写入为 .sav 文件
write_sav(df, "data.sav")
在上面的示例中,我们首先使用 as_factor()
函数将需要变换的变量(id、name、gender)转换为 SPSS 支持的 categorical 类型,这样在创建了 SPSS 数据文件之后,这些字段就可以正确地保存为单独的变量。注意,由于 SPSS 中字符串是被称为 categorical 的变量类型,所以我们把字符串转换为 factor
类型;这个类型在 R 里面被用于存储分类变量。
然后,我们使用 write_sav()
函数将转换后的 data.frame
对象写入到一个名为 data.sav
的文件中。在写入数据的同时,write_sav()
函数还会自动保存变量的标签,确保 SPSS 文件中的数据看起来与 R 中的数据具有相同的意义。