使用Pandas to_csv写入DataFrame单行到CSV格式异常,如何解决?
问题分析与解决方法
问题根源:
df.iloc[-1]返回的是Series对象(一维数据结构),调用to_csv时,Pandas默认会将Series的每个元素按行输出,最终导致每个值单独占一行,而非预期的逗号分隔格式。解决方法:将最后一行转为DataFrame对象(二维结构)后再写入CSV,只需把索引改为双层方括号
df.iloc[[-1]],这样返回的是包含最后一行的DataFrame,而非单个Series。修改后的代码如下:
df.iloc[[-1]].to_csv('output.csv', mode='a', index=False, header=False)
执行这段代码后,最后一行数据就会以逗号分隔的形式写入CSV文件的一行中。
内容的提问来源于stack exchange,提问作者user16950345
相关产品推荐
相关产品推荐

