我如何将数据作为列写入熊猫

时间:2018-11-17 10:18:38

标签: python pandas csv dataframe indexing

我正在努力将列表写入CSV文件。 因此,首先,我将列表转换为pandas数据框,然后尝试将其另存为文件的列,但是正在从新行显示数据。 您能帮我弄清楚代码中缺少的内容吗?

lst = ['Name', 'Age', 'City']
df = pd.DataFrame(lst)
df.to_csv('file.csv', mode='a', index=False, header=False)

预期结果:Name, Age, City

2 个答案:

答案 0 :(得分:2)

要另存为列,请将列表分配为列

lst = ['Name', 'Age', 'City']
df = pd.DataFrame(columns=lst)

df.to_csv('file.csv', mode='a', index=False)

如果未指定,则pd.DataFrame的第一个参数是data,因此必须显式分配给columns

答案 1 :(得分:1)

如果我的理解正确,您只需在行中添加.T即可写入转置的数据帧。

df.T.to_csv('file.csv', mode='a', index=False, header=False)
---^

尽管如果您仅使用熊猫将列表作为行写入csv文件,则最好查看csv模块,因为创建中间数据帧是毫无意义的。

import csv
lst = ['Name', 'Age', 'City']
with open('file.csv', 'a') as f:
    csv.writer(f).writerow(lst)