如何解决当对熊猫数据框使用to_excel...函数时,如何分隔空字符串,np.nan和无?
在Python 3.8.3和Pandas 1.0.4中构造包含df
,np.nan
和空字符串(None
)的数据帧''
之后
import pandas as pd
import numpy as np
df1 = pd.DataFrame({'b':None,'c':''},index=[0])
df2 = pd.DataFrame({'a':1,'b':1,'c':None},index=[0])
df = pd.concat([df1,df2],axis=0,sort=True)
print(df)
数据帧df
看起来像
a b c
0 NaN None
0 1.0 1 None
现在,我想使用to_excel()
函数将值存储到Excel。但是,运行命令后
df.to_excel('nan_none_empty.xlsx')
结果看起来像
带有np.nan
,None
和空字符串(''
)不可彼此分开。
可以使用选项''
从np.nan
和None
分离空字符串(na_rep
),如下所示
df.to_excel('nan_none_empty2.xlsx',na_rep='?')
给予结果
但是对于这个问题,看来options for to_excel(...) function已经用完了,以便能够在Excel导出中将np.nan
与None
分开。
将np.nan
导出到Excel时,None
和df
之间如何整洁地分开?
解决方法
如果您想区分不同的null类型,最好的选择是替换之前导出到Excel的值。转换为字符串是一种确保您不将None,np.NaN,pd.NaT等混淆的方法。
import
,
这样的事情怎么样?:
df = df.applymap(lambda x: str(x) if x in [None,''] else x)
df.to_excel('nan_none_empty.xlsx',na_rep='np.nan')
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。