Pandas高级处理--缺失值处理

高级处理

pandas的缺失值类型
应用replace实现数据的替换
应用dropna实现缺失值的删除
应用fillna实现缺失值的填充
应用isnull判断是否有缺失数据NaN

如何处理nan

判断是否为空
pd.isnull(df)-----为空
pd.notnull(df)----不为空
处理方式
1、存在缺失值nan,并且是np.nan
	a:删除存在缺失值的:dropna(axis='rows')
	注:不会修改原数据,需要接收返回值
	b:替换缺失值:fillna(value,inplace=True)
	value:替换成的值
	inplace:True:会修改原数据,False:不替换修改原数据,生成新的对象
2,不是缺失值nan,有默认标记的

电影数据的缺失值处理

电影数据文件获取:
movie = pd.read_csv("./data/....csv")
判断缺失值是否存在
pd.notnull(movie)
存在缺失值nan,并且是np.nan
1,删除
注意:pandas删除缺失值,使用dropna的前提是,缺失值的类型必须是np.nan
movie = movie.dropna()
2,替换缺失值
替换填充平均值、中位数
movie['Revenue (Millions)'].fillna(movie['Revenue (Millions)'].mean(), inplace=True)
不是缺失值nan,有默认标记的
处理思路:
	1,先替换“?”为np.nan
	df.replace(to_replace=,value=)
	to_replace:替换前的值
	value:替换后的值
	wis = df.replace(to_replace='?', value=np.nan)
	2,再进行缺失值的处理
	wis = wis.dropna()

删除某个字段为空的行

1,将特定字段为空的索引获取成列表形式
null_list = data[(data.school_name).isnull()].index.tolist()
2,删除这些列表
data1 = data.drop(labels=null_list, axis=0, inplace=True)
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值