write_xl 写入异常,把序号也写进去了

阅读次数 341

正常用Pandas构建数据写入是没问题的,但是用删除数据中的空行,刚好第一行是空行,行数索引本来是0 ,现在变成了1 用write_xl 写入数据把序号也写进去了

感谢反馈, 我们修复一下这个问题

2 Answers

您好。write_xl 是否写入 index 的依据是,index 是否是 pandas.RangeIndex 的实例,如果是则忽略,如果不是则写入。

if isinstance(df.index, pd.RangeIndex):
	写入 index
else:
	丢弃 index

所以,您反馈的这个问题,需要您看一下您的删除数据中的空行操作之后,是不是影响到了 index。必要的时候可以执行一下 df = df.reset_index() 来将 index 重置。

之前用dropna 删除是改变了 index 用df.reset_index() 无法重置序号 现在又试了一下dropna 序号没变,打印出来的结果序号是正常的,但是写入还是有序号 然后在调用一下df.reset_index() 序号重置了,多出来了一列index 需要在删除一下写入就正常了

之前用dropna 删除是改变了 index 用df.reset_index() 无法重置序号 现在又试了一下dropna 序号没变,打印出来的结果序号是正常的,但是写入还是有序号,然后在调用一下df.reset_index() 序号重置了,多出来了一列index

write_xl(df.dropna(ignore_index=True),'D1')

或者write_xl(df.dropna().reset_index(drop=True),'D1')

好的,感谢,解决了