您当前的位置: 首页 >  ar

qianbo_insist

暂无认证

  • 0浏览

    0关注

    399博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

制作数据集数据过滤和数据缺失策略-pandas-sklearn

qianbo_insist 发布时间:2022-04-29 06:41:28 ,浏览量:0

1、 使用csv文件过滤存储

使用工具将数据集过滤分类,将csv文件另存为小文件,使用代码将文件过滤分析,示例:存储文件11.csv后,过滤column类型为heart的列取值heart 数据示例:

idcodetypevaluecreatetime3181349XBDGW3C61055B14FCroll01/4/2022 09:41:193181376XBDGW3C61055B14FCheart531/4/2022 09:42:043191335XBDGW3C61055B14FDroll01/4/2022 16:44:343191336XBDGW3C61055B14ACheart1/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)
关注
打赏
1663161521
查看更多评论
立即登录/注册

微信扫码登录

0.1758s