データ処理に基づくsklearn

 sklearnの ライブラリは、機械学習アルゴリズムの様々なデータをすばやく分析プロセスでモデル化することができます組み込まれています。 パンダの 動作前に、より多くのデータを処理する必要がある機械学習モデルの機能を構築するために、結合データ、洗浄し、標準化(正規化偏差、正規化された標準偏差、正規化された分数スケーリング)を提供するが、ライブラリ、従って sklearn  関連する前処理機能パッケージの統一インターフェース ---  変換器( トランス )。使用 sklearnの 変換器が着信可能 numpyのの アレイ正規化処理、二値化し、 PCAは 他の操作となります。

       それは、データ変換になると、実際には padasの ライブラリーはまた、ダミー変数のデータ処理の種類、このような連続データなどの個別の機能を提供します。のみを学ぶ理由はここにある SQLを 完全に置き換えることはできません パンダに 一つの機能的な理由を。しかし sklearn  導入コンバータは、セットが動作訓練やテストを統一する方が便利なことができます。

       sklearnは また、古典的なデータセット、辞書のような方法を格納したデータセットを学ぶために簡単に提供します。 ancanda  スパイダー 変数データ・インタフェースとその値を直感的に見ることができます。これらのデータの前に、私たちのような、最終的な混乱の外観のデータ形式のデータ分析を理解することができます。たとえば、次のデータ( データ )、ラベル( ターゲット )、特性(特集 三つの基本要素)。スプリット研修とフォローアップ研修と試験の準備は、これらのデータから不可分です。

 

1、データセットがロードされているdatasats

データ(データ)、ラベル(ターゲット)、特性(機能):あなたは、データ・セットをロードする必要がある場合は、変数に対応する機能を割り当てることができ、データセットの三つの要素を再強調しました。次のコードに示すように:


sklearn.datasetsインポートload_breast_cancerから

可変絞りに割り当てられた癌= load_breast_cancer()##データセット

印刷( '長breast_cancerデータセットがある:'、LEN(癌))

印刷( 'とタイプbreast_cancerデータセット:'、タイプ(癌))

 

 


cancer_data =癌[ 'データ']

印刷( 'データbreast_cancerに設定データ:'、 '\ n' は、cancer_data)

 

ラベルデータセットを削除するcancer_target =ガン[「目標」] ##

印刷( 'ラベルbreast_cancerデータセットがあります:\ n'、cancer_target)

 

cancer_names =癌[「FEATURE_NAMEに」] ##抽出した特徴データセット名

print('breast_cancer数据集的特征名为:\n',cancer_names)

 

cancer_desc = cancer['DESCR'] ## 取出数据集的描述信息

print('breast_cancer数据集的描述信息为:\n',cancer_desc)

 

2、将数据划分为训练集和测试集

数据为什么要拆分?因为这是机器学习方法创新点。让计算思维来发掘数据内部的关联关系。这个方法不像传统的实验思维和理论思维。机器学习思路就是根据给定标签训练集来找出数据内在规律和关系。

sklearn  model_selection 模块提供了 train_test_split 函数,能够对数据集进行拆分。


print('原始数据集数据的形状为:',cancer_data.shape)

print('原始数据集标签的形状为:',cancer_target.shape)

 

from sklearn.model_selection import train_test_split

cancer_data_train, cancer_data_test,\

cancer_target_train, cancer_target_test = \

train_test_split(cancer_data, cancer_target,

    test_size=0.2, random_state=42)

print('训练集数据的形状为:',cancer_data_train.shape)

print('训练集标签的形状为:',cancer_target_train.shape)

print('测试集数据的形状为:',cancer_data_test.shape)

print('测试集标签的形状为:',cancer_target_test.shape)

 

3 、通过 sklearn 转换器进行数据预处理和降维

为了消除特征之间量纲和取值范围差异可能会造成的影响需要对数据进行标准化处理,也叫做规范化处理。实际上规范化就是减少空间复杂度的过程,PCA降维对应于时间复杂度降低过程。

sklearn 的转换器主要包括 3 个方法: fit  transform  fit_transform 等。

郑州不孕不育医院:http://www.xbzztj.com/

import numpy as np

from sklearn.preprocessing import MinMaxScaler

Scaler = MinMaxScaler().fit(cancer_data_train) ##生成规则

##将规则应用于训练集

cancer_trainScaler = Scaler.transform(cancer_data_train)

##将规则应用于测试集

##cancer_testScaler = Scaler.transform(cancer_data_test)

Scaler = MinMaxScaler().fit(cancer_data_test) ##生成规则

cancer_testScaler = Scaler.transform(cancer_data_test)

print('离差标准化前训练集数据的最小值为:',np.min(cancer_data_train))

print('离差标准化后训练集数据的最小值为:',np.min(cancer_trainScaler))

print('离差标准化前训练集数据的最大值为:',np.max(cancer_data_train))

print('离差标准化后训练集数据的最大值为:',np.max(cancer_trainScaler))

print('离差标准化前测试集数据的最小值为:',np.min(cancer_data_test))

print('离差标准化后测试集数据的最小值为:',np.min(cancer_testScaler))

print('离差标准化前测试集数据的最大值为:',np.max(cancer_data_test))

print('离差标准化后测试集数据的最大值为:',np.max(cancer_testScaler))

 

 

from sklearn.decomposition import PCA

pca_model = PCA(n_components=10).fit(cancer_trainScaler) ##生成规则

cancer_trainPca = pca_model.transform(cancer_trainScaler) ##将规则应用于训练集

cancer_testPca = pca_model.transform(cancer_testScaler) ##将规则应用于测试集

print('PCA降维前训练集数据的形状为:',cancer_trainScaler.shape)

print('PCA降维后训练集数据的形状为:',cancer_trainPca.shape)

print('PCA降维前测试集数据的形状为:',cancer_testScaler.shape)

print('PCA降维后测试集数据的形状为:',cancer_testPca.shape)


おすすめ

転載: blog.51cto.com/14510351/2435843