当字段为空时,Pandas DataFrame.to_csv最后一列丢失

时间:2016-08-17 10:45:20

标签: python pandas dataframe

我将数据从数据库中提取到csv文件中。

我意识到每次Null中一行的最后一个字段,那么DataFrame.to_csv就会省略它。 仅当空字段位于最后位置时才会发生这种情况。

这是一个例子:

dframe_iterator = pandas.read_sql_query(request, engine, chunksize=1000)
for i, dataframe in enumerate(dframe_iterator):   
        dataframe.to_csv('file.csv', index=False, header=True, sep='|', mode='a', encoding='utf-8', date_format='%d/%m/%Y')

假设sql查询返回的一个n-uplet包含2个Null值:

'blabla','blabla',Null, 'blabla', Null

然后,在csv文件中,我得到:

blabla|blabla||blabla

您可以看到第一个Null字段在那里(||),但第二个Null字段被省略。

我希望如此:

blabla|blabla||blabla|

你知道如何执行此操作吗? 另一个应用程序期望sql查询返回的字段数量很多。

谢谢!

2 个答案:

答案 0 :(得分:2)

嘿,好吧,我道歉,但我的问题是错的。

实际上,大熊猫的行为非常好:

'blabla','blabla',Null, 'blabla', Null

将是:

blabla|blabla||blabla|

我一直困扰着一个在最后位置有很多Null字段的数据集。 处理不同的数据集让我意识到这一点。 以及期望blabla|blabla||blabla||

的错误客户端规范

我真的因为愚蠢和快速发帖而道歉。

答案 1 :(得分:0)

您是否尝试过参数na_repDoc

  na_rep : string, default ‘’
       Missing data representation