python - Pandas 保存为 CSV 时更改 NaN 值的格式
问题描述
我正在使用 df 并使用 numpy 转换数据 - 包括将空白(或'')设置为 NaN。但是当我将 df 写入 csv 时 - 输出包含字符串“nan”,而不是 NULL。
我环顾四周,但找不到可行的解决方案。这是基本问题:
df
index x y z
0 1 NaN 2
1 NaN 3 4
CSV 输出:
index x y z
0 1 nan 2
1 nan 3 4
我尝试了一些将“nan”设置为 NULL 的方法,但 csv 输出结果为“空白”而不是 NULL:
dfDemographics = dfDemographics.replace('nan', np.NaN)
dfDemographics.replace(r'\s+( +\.)|#', np.nan, regex=True).replace('',
np.nan)
dfDemographics = dfDemographics.replace('nan', '') # of course, this wouldn't work, but tried it anyway.
任何帮助,将不胜感激。
解决方案
熊猫来救援,na_rep
用来修复你自己的 NaN 表示。
df.to_csv('file.csv', na_rep='NULL')
file.csv
,index,x,y,z
0,0,1.0,NULL,2
1,1,NULL,3.0,4
推荐阅读
- mysql - 根据表 project_users 中的 user_ID 显示字段
- python - 仅输入语句返回 Str 类型 - Jupyter Notebook
- python - 使用增量字段加载 DATA LOCAL INFILE
- php - PHP用api上传文件
- python - 从文件中获取输入,文件行成对分组
- bash - mv 文件夹目标上的通配符
- apache-flink - apache flink operator 和 keyed state 如何与并行实例一起工作?
- javascript - 如何在 html 表格中启用可点击的新添加行?
- git - 为什么我总是收到错误“推送到源/主服务器被拒绝”?
- django - 检查空字段的验证器