如何在不迭代每一列的情况下将数据帧追加到具有更改列顺序的csv文件中?

我正在尝试将新的数据帧迭代添加到单个CSV文件中。问题是数据帧总是具有相同的列名,但是它们的顺序是随机的。当前,我正在使用以下代码将新数据追加到csv中:

with open(name+'.csv','a') as f:
    df.to_csv(f,header=f.tell()==0)

但是,当更改列顺序时,这不起作用。它会继续按值顺序附加值,而不考虑标头。例如如果第一个数据框ID为[A,B,C,D]和第二个数据框ID为[D,C,A,B]的列顺序,则CSV变为:

A,B,C,D
a,b,c,d
a,d
...
d,a,b
d,b
...

有什么建议吗?

smallantji 回答:如何在不迭代每一列的情况下将数据帧追加到具有更改列顺序的csv文件中?

使用reindex功能

with open(name+'.csv','a') as f:
    df.reindex(columns=list('ABCD')).to_csv(f,header=f.tell()==0)
本文链接:https://www.f2er.com/3145565.html

大家都在问