使用Dataframe的savWriter编写器

时间:2017-07-25 10:02:58

标签: python pandas spss

我正在尝试使用带有Python的savReaderWriter库。我有一个数据框,通过df = pd.read_csv读入。但是,使用下面的代码片段似乎不会将行写入文件。

with savReaderWriter.SavWriter(savFileName, *args) as writer:
writer.writerows(df)

我收到以下错误TypeError:'str'对象不支持项目赋值。非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

这是https://pythonhosted.org/savReaderWriter/

上的示例
savFileName = 'someFile.sav'
records = [[b'Test1', 1, 1], [b'Test2', 2, 1]]
varNames = ['var1', 'v2', 'v3']
varTypes = {'var1': 5, 'v2': 0, 'v3': 0}
with savReaderWriter.SavWriter(savFileName, varNames, varTypes) as writer:
    for record in records:
        writer.writerow(record)

我认为您可以将DataFrame分成3个字段(记录,varNames,varTypes) 顺便说一句,您可以使用pandas中的方法将数据写入文件。

import pandas as pd

sensor_values = pd.DataFrame([[1,'aaa','bbb'],[2,'ppp','xxx']], columns=['A','B','C']) 
varNames=sensor_values.columns
records = sensor_values.values
varType = {key: 0 for x, key in enumerate(sensor_values.columns)}