pandas——如何处理NaN数据

函数含义
dropna(axis, how)删除整行或整列(axis是按照啥方向, how是删的条件,这俩都是可选的)
d.fillna(num)用num来替代其中的NaN
d.isnull()返回一个bool matrix,NaN表示为True
np.any(d.isnull()) == True判断d中有没有NaN

axis挺迷的:
知乎的

dropna(self, axis, how)

import pandas as pd
import numpy as np

d = pd.DataFrame(np.linspace(2, 17, 16).reshape(4, 4), ['a', 'b', 'c', 'd'], ['A', 2, 3, 4])
d.loc['b', 3] = np.nan
d.loc['c', 2] = np.nan
print(type(d))  # <class 'pandas.core.indexes.datetimes.DatetimeIndex'>
print(d)
print(d.dropna())  #

在这里插入图片描述

print(d.dropna(axis=1))

在这里插入图片描述
how:

  • any:表示只要有NaN就删
  • all:表示全都是NaN才删
print(d.dropna(how='all'))

在这里插入图片描述

d.fillna(num)

import pandas as pd
import numpy as np

d = pd.DataFrame(np.linspace(2, 17, 16).reshape(4, 4), ['a', 'b', 'c', 'd'], ['A', 2, 3, 4])
d.loc['b', 3] = np.nan
d.loc['c', 2] = np.nan
print(type(d))  # <class 'pandas.core.indexes.datetimes.DatetimeIndex'>
print(d)
print(d.fillna(-1))

在这里插入图片描述

d.isnull()

import pandas as pd
import numpy as np

d = pd.DataFrame(np.linspace(2, 17, 16).reshape(4, 4), ['a', 'b', 'c', 'd'], ['A', 2, 3, 4])
d.loc['b', 3] = np.nan
d.loc['c', 2] = np.nan
print(type(d))  # <class 'pandas.core.indexes.datetimes.DatetimeIndex'>
print(d)
print(d.isnull())

在这里插入图片描述

np.any(d.isnull()) == True

import pandas as pd
import numpy as np

d = pd.DataFrame(np.linspace(2, 17, 16).reshape(4, 4), ['a', 'b', 'c', 'd'], ['A', 2, 3, 4])
d.loc['b', 3] = np.nan
d.loc['c', 2] = np.nan
print(type(d))  # <class 'pandas.core.indexes.datetimes.DatetimeIndex'>
print(d)
print(np.any(d.isnull()) == True)
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值