作者:段筱筱雨_422 | 来源:互联网 | 2023-05-31 12:43
数据预处理一般操作数据读取数据分析数据大小确认数据类型、缺失值、缺失值占比确认数据相关性-数据处理数据类型转换显示pd.to_numeric函数散点图观察缺失值处理数据删除缺失值填写:文本数据
读取数据
通过导入数据并将其集成到df_features中,可以一起处理训练集和测试集。
#读取excel train=PD.read _ excel (r ' file path ' ) test=PD.read_excel读取csvtrain=PD.read_ )。 合并数据df_features=train.append(test )数据分析显示数据大小print ('培训集: ' str ' train.shape ) \ n测试集: (' str ) test.shape ) )数据类型显示缺少值的百分比#列号为中文col=[ ] df _ features.columns=col # view bili=list ((() ) . format(x ) ).values ) for index,values,isnull,biinzip (list (df _ features.dtypes.index ),list ) df _ df list(df_features.isnull ).sum )、bili ) :12 ) ({ :12 } { 336012 } { 336012 } { 336012 } { 336012 } )、)
查看数据依赖关系-#相关函数data.corr ()打印相关矩阵的第一列) #for index,valuesinzip ) df_features.corr ).index, df_features.corr ().values[0] ) : # print ({ :15 } ).format ) index, values ) (#相关性importmatplotlib.pyplotaspltimportseabornassnsfrompylabimportmpl.rcparams [ ' font.sans-serif ' ] )=差速器=false#解析保存映像指定为负的PLT.figure (fig size=6520,20 ) (ax=SNS.heatmap ) teatmap ) square=True,line color='。 center=0) ax.tick_Params(labelsize=10 ) plt.show )数据处理数据类型对不可转换的数据执行nandf _ features [ ' columns _ name ' ]
散点图由importmatplotlib.pyplotasplt.scatter (df _ features [ ' columns _ name ' ].index,df _ features [ ' columns _ ne ]
data frame.drop _ duplicates (subset=none,keep='first ',inplace=False ) ) Python Pandas是数据drop_duplicates的详细解
删除一列:
df_features.drop(columns_name ),axis=1,inplace=True )缺少值的填充:常规填充方法:
填充-1: df _ features [ ' columns _ name ' ].fill na [-1,inplace=True填充乘数,平均数, 中值等: df _ features [ ' columns _ ] in place=true (#填充平均数df _ features [ ' columns _ name ' ).fill na (df _ features [ inplace=true(#中值df _ features [ ' columns _ name ' ].fill na (df _ features [ ' columns _ name ' ].mode ) )0)
KNNImputer :可靠的缺失值插值方法
我建议你看看这个。 填补缺失值的几种方法
文本数据处理http://www.Sina.com/: froms klearn.preprocessingimportlabelencoderforfeatin [ ' columns _ name ' ] 3360 LBL=lame ) df _ features [ feat ]=LBL.transform (df _ features [ feat ] ) http://www.Sina.)
用“虚拟变量矩阵”(dummy matrix )替换分类变量。 如果DataFrame列包含k个不同的值,则可以派生k列矩阵或DataFrame。 值都是0和1。 pandas具有实现此功能的get_dummies函数。
pandas.get_dummies(data,prefix=None,prefix _ sep=’_’,dummy_na=False,columns=None,sparse=false 99 ) ) get_dummies(data,)如果不指定新列的列名,则dummies1=PD.get (列名print(--------df-------- ) )打印) df ) data的原始标记对print(df_dummies1) #prefix参数是prefix='key ' ) print,其可以将前缀df_dummies2=PD.get_dummies ) df加到伪变量的名称prefix='key ' )----df_dummies2-----默认情况下,所有分类变量都是one_hot处理df_dummies3=PD.get_dummies(df ) 一个列参数df_dummies4=PD.get_dummies(df,prefix=['class ', “like”)打印)“”-----PD.get )是必需的“like”)----df_dummies4-----“”)打印(df _ dummies ) ' sorce']----df_dummies5----' ' )打印(df _ dummies5)原文链接: Python对数据one-hot代码
LabelEncoder编码:重新审视: AI基础:特征工程-文本特征处理
最后,建议大家看看桨的数据准备和特征工程的故事。