我正在努力将列表写入CSV文件。 因此,首先,我将列表转换为pandas数据框,然后尝试将其另存为文件的列,但是正在从新行显示数据。 您能帮我弄清楚代码中缺少的内容吗?
lst = ['Name', 'Age', 'City']
df = pd.DataFrame(lst)
df.to_csv('file.csv', mode='a', index=False, header=False)
预期结果:Name, Age, City
答案 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)