我想将一堆.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
)
}