首先创建具有缺失值NaN(Not A Number)的CSV(comma-separated values)文件:

import pandas as pdfrom io import StringIOcsv_data =
"""A,B,C,D1.0,2.0,3.0,4.05.0,6.0,,8.00.0,11.0,12.0,"""# If you are using Python
2.7, you need# to convert the string to unicode:# csv_data =
unicode(csv_data)df = pd.read_csv(StringIO(csv_data))1

2

3

4

5

6

7

8

9

10

删除含缺失值的样本

具体处理方法:

df.isnull()#是缺失值返回True,否则范围False

df.isnull().sum()#返回每列包含的缺失值的个数

df.dropna()#直接删除含有缺失值的行

df.dropna(axis = 1)#直接删除含有缺失值的列

df.dropna(how = "all")#只删除全是缺失值的行

df.dropna(thresh = 4)#保留至少有4个缺失值的行

df.dropna(subset = ["C"])#删除含有缺失值的特定的列

填充缺失值

数值型数值(Numerical Data)

方法一:fillna()函数

df.fillna(0):用0填充

df.fillna(method="pad"):用前一个数值填充

df.fillna(df2.mean()):用该列均值填充

方法二:Imputer

from sklearn.preprocessing import Imputerimr = Imputer(missing_values="NaN",
strategy="mean", axis=0)#均值填充缺失值imr = imr.fit(df)imputed_data =
imr.transform(df.values)1

2

3

4

技术
下载桌面版
GitHub
Gitee
SourceForge
百度网盘(提取码:draw)
云服务器优惠
华为云优惠券
腾讯云优惠券
阿里云优惠券
Vultr优惠券
站点信息
问题反馈
邮箱:[email protected]
吐槽一下
QQ群:766591547
关注微信