这里写自定义目录标题
- 数据导入
- 数据描述
- 数据的可视化
- 数据预处理
- 数据特征的选择
数据导入
(1)python标准类库导入
(2)用numpy模块导入
(3)用pandas导入
frompandasimportread_csv filename='pima-indians-diabetes.csv'names=['preg','plas','pres','skin','test','mass','pedi','age','class']data=read_csv(filename,names=names)数据描述
(1)描述性统计
frompandasimportset_optionset_option('precision',4)print(data.describe())
(2)数据的分组分布
print(data.groupby('class').size())(3)数据属性的相关性
使用皮尔逊相关系数:1表示正相关,-1表示负相关
set_option('display.width',100)set_option('precision',2)print(data.corr(method='pearson'))数据的可视化
(1)直方图显示
data.hist()plt.show()(2)密度图显示
data.plot(kind='density',subplots=True,layout=(3,3),sharex=False)plt.show()(3)散点图显示
scatter_matrix(data)plt.show()数据预处理
(1)调整数据的尺度
fromnumpyimportset_printoptionsfromsklearn.preprocessingimportMinMaxScaler transformer=MinMaxScaler(feature_range=(0,1))newX=transformer.fit_transform(X)set_printoptions(precision=3)print(newX)将所有数据的值调整在(0,1)之间。
(2)正态化数据
transformer=StandardScaler().fix(X)newX=transformer.fit_transform(X)set_printoptions(precision=3)print(newX)(3)标准化数据
transformer=Normalizer().fix(X)newX=transformer.fit_transform(X)set_printoptions(precision=3)print(newX)(4)二值化数据
transformer=Binarizer(threshold=0.0).fix(X)newX=transformer.fit_transform(X)set_printoptions(precision=3)print(newX)数据特征的选择
(1)单变量特征选定(卡方检验)
test=SelectKBest(score_func=chi2,k=4)fit=test.fit(X,Y)set_printoptions(precision=3)print(fit.scores_)features=fit.transform(X)print(features)
这里的数值越大表示对结果影响最大的因素,可作为特征选择的参考值。
(2)递归特征消除(RFE)
对此方法的理解不够,需要使用时再仔细研究
(3)主要成分分析(PCA)
通常被称作数据降维
pca=PCA(n_components=3)fit=pca.fit(X)print("解释方差:%s",fit.explained_variance_ratio_)print(fit.components_)下一章就到模型的选择了,设计模型评价等点。