(3)pandas 缺失数据处理

步骤一、环境准备

右击桌面上选择【Open in Terminal】 打开终端。
在弹出的终端中输入【ipython】进入Python的解释器中,如图1所示。python

 

图1 ipython解释器

步骤二、导入所须要的包

导入实验经常使用的python包。如图2所示。
【import pandas as pd】pandas用来作数据处理。
【import numpy as np】numpy用来作高维度矩阵运算.
【import matplotlib.pyplot as plt】matplotlib用来作数据可视化。dom

 

图2 导入所须要的包

步骤三、pandas缺失数据过滤

生成实验所须要的数据,如图3所示。
【dates = pd.date_range(‘20170101’,’20170106’)】生成6个索引
【df = pd.DataFrame(np.random.randn(6,4),index=dates,columns=list(‘ABCD’))】生成初始数据
【df.loc[dates[0],’B’] = np.nan】设置第一行B列为空
【df.loc[dates[3:5],’D’] = np.nan】设置第4至6行D列为空
【df】查看生成的数据函数

 

图3 生成数据

dropna()函数一样会丢掉全部含有空元素的数据,如图4所示。
【df.dropna()】丢失掉含有空元素的数据
【df.dropna(how=’any’)】等同于上条命令
【df.loc[dates[5]] = np.nan】设置最后一行书据为空
【df】查看生成的数据
【df.dropna(how=’all’)】只有全部数据为空时才会丢弃spa

 

图4 数据过滤1


若是想以一样的方式按列丢弃,能够传入axis=1,如图5所示
【df[‘E’] = np.nan】 增长一所有为空的列
【df】查看生成的数据
【df.dropna(how=’all’,axis=1)】列数据都为空时丢弃
索引

图5 数据过滤2

步骤四、pandas缺失值填充

对缺失值进行填充,如图6所示。
【df】查看数据
【df.filna(0)】对缺失部分用0填充
【df.fillna({‘A’:10,’B’:20,’C’:30,’D’:40,’E’:50})】传入一个字典,对不一样的列填充
【pd.isnull(df)】布尔填充,是否为空ip

 

图6 缺失值填充
相关文章
相关标签/搜索