制作数据集数据过滤和数据缺失策略-pandas-sklearn
Posted qianbo_insist
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了制作数据集数据过滤和数据缺失策略-pandas-sklearn相关的知识,希望对你有一定的参考价值。
1、 使用csv文件过滤存储
使用工具将数据集过滤分类,将csv文件另存为小文件,使用代码将文件过滤分析,示例:存储文件11.csv后,过滤column类型为heart的列取值heart
数据示例:
id | code | type | value | createtime |
---|---|---|---|---|
3181349 | XBDGW3C61055B14FC | roll | 0 | 1/4/2022 09:41:19 |
3181376 | XBDGW3C61055B14FC | heart | 53 | 1/4/2022 09:42:04 |
3191335 | XBDGW3C61055B14FD | roll | 0 | 1/4/2022 16:44:34 |
3191336 | XBDGW3C61055B14AC | heart | 1/4/2022 16:44:34 |
import numpy as np
import sklearn.cluster as sc
import matplotlib.pyplot as plt
import pandas as pd
df=pd.read_csv("11.csv")
df.query("(type=='heart')");
test = df.loc[0:40]
test.plot(kind='scatter', x="createtime", y='value')
plt.show()
数据有缺失,下面3中会使用Imputer用中位数代替
2、增加column
缺少数据column
import pandas as pd
import numpy as np
df=pd.DataFrame([["3181349","XBDGW3C61055B14FC" , "roll", 0,"1/4/2022 09:41:19" ],
["3181350", "XBDGW3C61055B14FC", "heart", 67, np.nan],
["3181351","XBDGW3C61055B14FD" , "heart", 68, "1/4/2022 09:42:04"]])
df.columns=["id", "code", "type", "value", "createtime"]
print(df)
3、 创建Imputer器
from sklearn.preprocessing import Imputer
imp =Imputer(missing_values="NaN", strategy="mean",axis=0 )
#使用fit_transform()函数即可完成缺失值填充了
df["value"]=imp.fit_transform(df[["value"]])
处理多列
df[['value', '其他列']] = imp.fit_transform(df[['value', '其他列']])
print(df)
4、dropna(),drop,fillna()
#删除value中的无值
data.dropna(subset=["value"])
#删除无效的code列
data.drop("code", axis=1)
#使用中位数代替
median = data["value"].median()
data["value"].fillna(median)
以上是关于制作数据集数据过滤和数据缺失策略-pandas-sklearn的主要内容,如果未能解决你的问题,请参考以下文章