首页 > 数据分析

pandas 实现将NaN转换为None

时间:2021-07-20 数据分析 查看: 854

在python中,用pandas处理数据非常方便。

但是有时候从其他地方读取数据时,会有异常值需要处理。

比如,我们要从excel读取数据然后调用接口写入数据库时,读取到的空值是NaN,但是,接口接收的对应单元格数据应该是None,这时候怎么处理呢?当然,用pandas做这个事也是非常容易的。

示例如下:

原始数据:

示例代码:

import pandas as pd        
df = pd.read_excel('data/test_data.xlsx')
# 将非空数据保留,空数据用None替换
df = df.where(df.notnull(), None)
print(df)

输出结果:

id value

0 1 100

1 2 None

2 3 None

3 4 50

补充:Pandas Nan & None 处理

在处理数据的时候遇到这个问题。

数据库里的值 是null

然后读取数据库后得到的dataframe 里显示的事None.

想把这些None 装换成0.0 但是试过很多方法都不奏效。

使用过

df['PLANDAY'].replace('None',0)

未奏效

这个判断句是生效的

df.loc[0,'PLANDAY'] is None:

后来发现这个数据类型是Nan 不是None

因此使用解决了上诉问题。

df['PLANDAY'] = df['PLANDAY'].fillna(0.0)

以上为个人经验,希望能给大家一个参考,也希望大家多多支持python博客。

展开全文
上一篇:使用numpy nonzero 找出非0元素
下一篇:如何获取numpy的第一个非0元素索引
输入字:
相关知识
python数据挖掘使用Evidently创建机器学习模型仪表板

在本文中,我们将探索 Evidently 并创建交互式报告/仪表板。有需要的朋友欢迎大家收藏学习,希望能够有所帮助,祝大家多多进步早日升职加薪

Python多进程共享numpy 数组的方法

本文章主要介绍了Python多进程共享numpy 数组的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

python数据分析近年比特币价格涨幅趋势分布

这篇文章主要为大家介绍了python分析近年来比特币价格涨幅趋势的数据分布,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步

python调用matlab的方法详解

这篇文章主要为大家介绍了python调用matlab,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助