-
2019-10-08 16:59:33
将dataframe中的NAN值进行填充,填充方法如下:
用0填充:
df.fillna(0)
用字符串填充:
df.fillna("missing")
用前一个数据填充:
df.fillna(method="pad")
用后一个数据代替NaN:
df.fillna(method="bfill")
这里的前、后一个数值默认是纵向看的,如果需要使用左或者右边的数值进行填充,只需要加参数axis=1,就可以了。
limit参数限制每列可以替代NaN的数目,例如限制每列只能替代一个NaN
df.fillna(method="bfill",limit=1)
使用平均数填充:
df.fillna(df.mean())
对指定列填充:
df.fillna(df.mean()["one":"two"])
用某列的均值填充该列NAN值:
for column in list(feature_1.columns[feature_1.isnull().sum() > 0]): mean_val = feature_1[column].mean() feature_1[column].fillna(mean_val, inplace=True)
加 inplace=True,才会在原df上进行数据修改。
按照axis指定方向,用差值替代,差值是前后或者上下的中间值
store_items.interpolate(method = 'linear', axis = 0)
其他有用连接:
在Pandas中处理NaN值更多相关内容 -
Pandas 填充缺失值
2021-11-16 10:50:40很多时候我们需要将缺失值替换成有效的数值。有效的值可能是像 0、1、2 那样单独的值,也可能是经过填充(imputation)或转换(interpolation)得到的。很多时候我们需要将缺失值替换成有效的数值。有效的值可能是像 0、1、2 那样单独的值,也可能是经过填充(imputation)或转换(interpolation)得到的。
虽然可以通过 isnull() 方法建立掩码来填充缺失值,但是 Pandas 为此专门提供了一个fillna() 方法,它将返回填充了缺失值后的数组副本。
来用下面的 Series 演示:data = pd.Series([1, np.nan, 2, None, 3], index=list('abcde')) print(data)
输出结果如下所示:
a 1.0 b NaN c 2.0 d NaN e 3.0 dtype: float64
我们将用一个单独的值来填充缺失值,例如用 0:
In[24]: data.fillna(0)
输出结果如下所示:
a 1.0 b 0.0 c 2.0 d 0.0 e 3.0 dtype: float64
可以用缺失值前面的有效值来从前往后填充(forward-fill):
# 从前往后填充 data.fillna(method='ffill')
输出结果如下所示:
a 1.0 b 1.0 c 2.0 d 2.0 e 3.0 dtype: float64
也可以用缺失值后面的有效值来从后往前填充(back-fill):
# 从后往前填充 data.fillna(method='bfill')
输出结果如下所示:
a 1.0 b 2.0 c 2.0 d 3.0 e 3.0 dtype: float64
DataFrame 的操作方法与 Series 类似,只是在填充时需要设置坐标轴参数 axis:
print(df)
输出结果如下所示:
0 1 2 3 0 1.0 NaN 2 NaN 1 2.0 3.0 5 NaN 2 NaN 4.0 6 NaN
df.fillna(method='ffill', axis=1)
输出结果如下所示:
0 1 2 3 0 1.0 1.0 2.0 2.0 1 2.0 3.0 5.0 5.0 2 NaN 4.0 6.0 6.0
需要注意的是,假如在从前往后填充时,需要填充的缺失值前面没有值,那么它就仍然是缺失值。
-
Pandas 填充缺失值,填充单列
2022-03-18 14:29:16DataFrame.fillna(value=None, method=None, ...1:建立一个带有缺失值的data import numpy as np from numpy import nan import pandas as pd data=pd.DataFrame(np.arange(3,19,1).reshape(4,4),index=list('abcd')DataFrame.fillna(value=None, method=None, axis=None, inplace=False, limit=None, downcast=None, **kwargs)
官方链接
1:建立一个带有缺失值的data
import numpy as np from numpy import nan import pandas as pd data=pd.DataFrame(np.arange(3,19,1).reshape(4,4),index=list('abcd')) print(data) data.iloc[0:2,0:3]=nan print(data) print(data.isnull().sum()) #查看缺失情况
2.填充单列
用均值填充:
inplace = True直接改变data值,如果不写的话需要在给序列赋一遍值如:data[0] = data[0].fillna(data[0].mean())
用众数填充:
需要注意的是众数填充时mode()返回的是一个Series类型所以要加上索引
3.填充整个数列
-
Python+pandas填充缺失值的几种方法
2021-07-13 17:33:22用于填充缺失值的fillna()方法的语法为: fillna(value=None, method=None, axis=None, inplace=False, limit=None, downcast=None, **kwargs) 其中,参数value用来指定要替换的值,可以是标量、字典、Series或...封面图片:《Python程序设计基础(第2版)》,ISBN:9787302490562,董付国,清华大学出版社
图书详情:https://item.jd.com/12319738.html
好消息:智慧树网APP“知到”中搜索“董付国”可以免费观看《Python程序设计基础(第2版)》配套的32节360分钟视频
==============
由于人为失误或机器故障,可能会导致某些数据丢失。在数据分析时应注意检查有没有缺失的数据,如果有则将其删除或替换为特定的值,以减小对最终数据分析结果的影响。
DataFrame结构支持使用dropna()方法丢弃带有缺失值的数据行,或者使用fillna()方法对缺失值进行批量替换,也可以使用loc()、iloc()方法直接对符合条件的数据进行替换。
dropna()方法的语法为:
dropna(axis=0, how='any', thresh=None, subset=None, inplace=False)
其中,参数how='any'时表示只要某行包含缺失值就丢弃,how='all'时表示某行全部为缺失值才丢弃;参数thresh用来指定保留包含几个非缺失值数据的行;参数subset用来指定在判断缺失值时只考虑哪些列。
用于填充缺失值的fillna()方法的语法为:
fillna(value=None, method=None, axis=None, inplace=False, limit=None, downcast=None, **kwargs)
其中,参数value用来指定要替换的值,可以是标量、字典、Series或DataFrame;参数method用来指定填充缺失值的方式,值为'pad'或'ffill'时表示使用扫描过程中遇到的最后一个有效值一直填充到下一个有效值,值为'backfill'或'bfill'时表示使用缺失值之后遇到的第一个有效值填充前面遇到的所有连续缺失值;参数limit用来指定设置了参数method时最多填充多少个连续的缺失值;参数inplace=True时表示原地替换。
本文重点演示fillna()方法的用法。
温馨提示
关注本公众号“Python小屋”,通过菜单“最新资源”==>“历史文章”可以快速查看分专题的800篇技术文章列表(可根据关键字在页面上搜索感兴趣的文章),通过“最新资源”==>“微课专区”可以免费观看300节Python微课,通过“最新资源”==>“培训动态”可以查看近期Python培训安排,通过“最新资源”==>“教学资源”可以查看Python教学资源。
--------董付国老师Python系列图书--------
友情提示:不建议购买太多,最好先通过京东、当当、天猫查阅图书了解目录和侧重点,然后再选择购买适合自己的书。
1)《Python程序设计(第2版)》清华大学出版社,2016年8月
2)《Python可以这样学》清华大学出版社,2017年2月
3)《Python程序设计基础(第2版)》清华大学出版社,2018年1月
4)《中学生可以这样学Python》清华大学出版社,配套微课:《中学生可以这样学Python》84节微课免费观看地址
5)《Python程序设计开发宝典》清华大学出版社,2018年10月
6)《玩转Python轻松过二级》清华大学出版社,2018年5月
7)《Python程序设计基础与应用》机械工业出版社,2018年9月
8)《Python程序设计实验指导书》清华大学出版社,2019年4月
9)《Python编程基础与案例集锦(中学版)》电子工业出版社,2019年4月
10)《大数据的Python基础》机械工业出版社,预计2019年5月出版
11)译作《Python程序设计》,机械工业出版社(华章),2018年11月出版
12)繁体版《Python也可以这样学》,台湾博硕文化股份有限公司,2017年10月出版,本书为《Python可以这样学》在台湾发行的繁体版,两本书内容一样,不建议重复购买。
“Python小屋”免费资源汇总(截至2018年11月28日)
课后习题答案
实验指导书
Python实验项目1例:使用进程池统计指定范围内素数的个数
教学大纲
课件
1900页Python系列PPT分享一:基础知识(106页)
1900页Python系列PPT分享二:Python序列(列表、元组、字典、集合)(154页)
1900页Python系列PPT分享三:选择与循环结构语法及案例(96页)
1900页Python系列PPT分享四:字符串与正则表达式(109页)
1900页Python系列PPT分享五:函数设计与应用(134页)
1900页Python系列PPT分享六:面向对象程序设计(86页)
1900页Python系列PPT分享七:文件操作(132页)
1900页Python系列PPT分享八:异常处理结构与程序调试、测试(70页)
2000页Python系列PPT分享九:(GUI编程)(122页)
报告PPT
-
pandas缺失值填充
2021-08-22 23:00:46作用: 填充缺失值 DataFrame.fillna(value=None, method=None, axis=None, inplace=False, limit=None, downcast=None, **kwargs) 主要参数: value:需要用什么值去填充缺失值 axis:确定填充维度,从行开始或是从... -
pandas 使用均值填充缺失值列的小技巧分享
2020-09-19 03:50:22今天小编就为大家分享一篇pandas 使用均值填充缺失值列的小技巧分享,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧 -
pandas 对缺失值的处理
2022-03-28 19:48:32被认为是缺失值的值 因为计算速度和便利性的原因,NaN是默认的缺失值符号。在许多情况下,python的None我们也希望被认作是缺失值或者不合法值或者NA。 Note: 如果想把inf和-inf认为是NA,那么可以设置: pandas.... -
pandas-缺失值处置
2021-01-13 18:56:28# 缺失值是指数据集中的某些观察存在遗漏的指标值,缺失值的存在同样会影响到数据剖析和挖掘的效果。# 可以采三种方式处置:删除法,替换法和插补法。# 1.删除法使用情况:当确实的观察比例异常低是,如5%以内,可以... -
Python-pandas:每组均值填充缺失值
2021-03-16 15:09:35使用transform: >>> df name value 0 A 1 1 A NaN 2 B NaN 3 B 2 4 B 3 5 B 1 6 C 3 7 C NaN 8 C 3 >... df["value"] = df.groupby("name").transform(lambda x: x.fillna(x.mean())) -
pandas:填充缺失值
2020-04-09 20:59:27当数据中存在NaN缺失值时,我们可以用其他数值替代NaN,主要用到了DataFrame.fillna()方法,下面我们来看看具体的用法: 1.先来创建一个带有缺失值的DataFrame: import pandas as pd import numpy as np df=pd.... -
【Python】详解pandas缺失值处理
2022-06-19 00:39:07本篇详解pandas中缺失值(Missing data handling)处理常用操作。 缺失值处理常用于数据分析数据清洗阶段; Pandas中将如下类型定义为缺失值: NaN: ‘’, ‘#N/A’, ‘#N/A N/A’, ‘#NA’, ‘-1.#IND’, ‘-1.#... -
[Pandas] 缺失值填充 df.fillna()
2022-02-14 14:19:30[Pandas] 缺失值填充 -
python使用pandas填补缺失值——众数填充失败:
2022-05-05 16:57:07数据挖掘当中填补缺失值出现失败的情况 -
Python Pandas 处理缺失值
2021-01-13 18:56:27当我们拿到一份原始数据,首先会查看数据的基础信息,例如每一列数量统计,内存消耗、哪些列有缺失值等。完整的数据对于我们的数据分析工作来说意义重大,但对于实际收集数据的人却不是,所以我们经常会遇到数据缺失... -
Python - Pandas 对缺失值的处理方法
2022-03-26 15:45:10import pandas as pd studf = pd.read_excel('xx.xlsx', skiprows=2) # 读取时跳过前两行 # 检测空值 studf.isnull() 检测空值的返回结果 # 单列检测空值 studf['分数'].isnull() # 与isnull相反,非空为True ... -
Pandas对缺失值的处理-pandas处理excel表格缺失值
2021-01-07 05:50:355、将姓名的缺失值进行填充 6、将清洗好的数据保存到指定excel中 原始数据: 最后输出数据: 处理步骤: 1、读取数据: 2、删除全是空值的列 3、删除全是空值的行 4、将分数列值为NAN(空值)的填充为0分 5、...