pandas.Series.to_csv 或 pandas.Series.to_excel - 如何将两个系列导出到 csv 或 xlsx 文件中?

pandas.Series.to_csv or pandas.Series.to_excel - How to export two serie into on csv or xlsx file?

我有那些系列:

d = {'a': 1, 'b': 2, 'c': 3}
ser = pd.Series(data=d, index=['a', 'b', 'c']).rename('ser')

d2 = {'adf': 3, 'dfg': 6}
ser2 = pd.Series(data=d2, index=['adf', 'dfg']).rename('ser2')

我可以将它们单独导出为 csv:

ser.to_csv('ser.csv',sep=';')
ser2.to_csv('ser2.csv',sep=';')

我想将它们导出到一个通用的 csv 文件中:

我应该如何进行?

提前致谢!

您可以使用 shell 命令 cat ser2.csv >> ser.csv,或者在 Python:

with open('ser_combined.csv', 'w') as f:
    for fname in ['ser.csv', 'ser2.csv']:
        with open(fname) as in_f:
            f.write(in_f.read())

虽然我建议不要在 csv 文件中包含系列名称,因为这会使解析 csv 变得更加困难,但您可以通过在 pandas 中使用 mode 参数来实现此目的to_csv方法:

ser.rename('ser').to_csv('series.csv', sep=';')
ser2.rename('ser2').to_csv('series.csv', sep=';', mode='a')

这将生成包含以下内容的 csv:

;ser
a;1
b;2
c;3
;ser2
adf;3
dfg;6