将R中的多个.sav转换为.csv

  • 本文关键字:sav 转换 csv r csv spss
  • 更新时间 :
  • 英文 :


我想将一堆.sav转换为.csv

我有一个这样的文件列表:

c("Congo_MICS5_Datasets/Congo MICS 2014-15 SPSS Datasets/bh.sav", "Congo_MICS5_Datasets/Congo MICS 2014-15 SPSS Datasets/ch.sav", "Congo_MICS5_Datasets/Congo MICS 2014-15 SPSS Datasets/hh.sav")

如何转换它们并保留文件名?

假设你在可以访问相对路径的工作目录中,假设你使用的是foreign包,假设你不想要行名(因为问题很稀疏,所以有很多假设(:

c(
"Congo_MICS5_Datasets/Congo MICS 2014-15 SPSS Datasets/bh.sav", 
"Congo_MICS5_Datasets/Congo MICS 2014-15 SPSS Datasets/ch.sav", 
"Congo_MICS5_Datasets/Congo MICS 2014-15 SPSS Datasets/hh.sav"
) -> fils
for (fil in fils) {
write.csv(
x = foreign::read.spss(file = fil, to.data.frame = TRUE),
file = sprintf("%s.csv", tools::file_path_sans_ext(fil)),
row.names = FALSE
)
}

最新更新