我将数据从数据库中提取到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查询返回的字段数量很多。
谢谢!
答案 0 :(得分:2)
实际上,大熊猫的行为非常好:
'blabla','blabla',Null, 'blabla', Null
将是:
blabla|blabla||blabla|
我一直困扰着一个在最后位置有很多Null字段的数据集。
处理不同的数据集让我意识到这一点。
以及期望blabla|blabla||blabla||
我真的因为愚蠢和快速发帖而道歉。
答案 1 :(得分:0)
您是否尝试过参数na_rep
? Doc
na_rep : string, default ‘’
Missing data representation