【发布时间】:2020-05-22 23:38:56
【问题描述】:
我正在尝试使用 Python 将一个 ~2GB 的 SPSS (.SAV) 大文件转换为 CSV。
如果有一个大小
import pandas as pd
df = pd.read_spss('stdFile.sav')
df.to_csv("stdFile.csv", encoding = "utf-8-sig")
但在这种情况下,我得到了 MemoryError...
我期待解决方案,不一定是 Python。但我没有 SPSS 许可证,所以我必须使用其他工具转换文件。
【问题讨论】:
-
你能分享一些你的台词
sav file吗? -
这可能会有所帮助:youtube.com/watch?v=yPaPZDg6JAA [YouTube - 将 SPSS (.sav) 转换为文本 (.csv)]
-
如果您对
R感到满意,您可以使用包haven或foreign读取.sav 文件,然后您可以使用base R或@987654328 @package 写出一个.csv -
我刚刚尝试了你的选项,使用 R: library(foreign) write.table(read.spss("inputfile.sav"), file="outputfile.csv", quote = FALSE, sep = ",") 现在的问题是,我得到了很多空格!原始文件是 .SAV(2GB),结果是 .CSV(6GB) 我必须阅读更多关于 R 的内容,然后再次报告,这是我第一次使用 R-Gui。但无论如何,我现在可以使用 python 处理块来清除 CSV。但我会再试一次R