如何将 pandas 数据框保存到 sav 文件中

qua*_*ant 3 python spss python-3.x pandas

我有以下内容dataframe

import pandas as pd
mc_all = pd.DataFrame({'col_1': [0,1,1,2],
'col_2' : ['france','france','uk','uk']})
Run Code Online (Sandbox Code Playgroud)

我正在尝试此操作以便将其保存到文件dataframesav

args = ( list(mc_all.columns), dict(zip(list(mc_all.columns),[0]*len(list(mc_all.columns)))) )
with SavWriter('mc_all.sav',*args) as writer:
    writer.writerows(mc_all)
Run Code Online (Sandbox Code Playgroud)

根据这个,但它不起作用。它抛出一个错误:

error.SPSSIOError:提交标头时出现问题 [SPSS_INVALID_HANDLE]

有任何想法吗 ?

Ott*_*rdo 6

您可以使用 pyreadstat:

import pyreadstat

pyreadstat.write_sav(mc_all, savFileName)
Run Code Online (Sandbox Code Playgroud)

更多信息请点击这里:

https://github.com/Roche/pyreadstat#writing-files