scikit-learn の sklearn.datasets モジュールは、組み込みのデータセットをロードする関数 (load_*
) や、インターネット上のデータセットを取得する関数 (fetch_*
) を提供しています。
scikit-learn の各種モジュールの振る舞いを学ぶときは、これらのデータセットをサンプルデータとして使うと便利です。
組み込みのデータセット
load_
で始まる関数を使用すると、scikit-learn に組み込まれているデータセットを読み込むことができます。
データ数は少ないですが、実験には十分です。
from sklearn.datasets import load_diabetes
diabetes = load_diabetes()
関数名 | 用途 | 説明 |
---|---|---|
load_diabetes | 回帰 | 糖尿病 (diabetes) 患者の診断データです。このデータセットは、糖尿病患者の臨床データからなり、主に糖尿病の進行を予測するための回帰分析に使用されます。データには患者の年齢、性別、平均血圧、BMI(Body Mass Index)、血清の 6 つの生化学的特徴(血清中の濃度など)などの特徴が含まれています。1 年後の糖尿病の進行を示す数値を予測します。 |
load_linnerud | 回帰 | 体力トレーニングの効果に関する 2 つのデータセットです。
|
load_breast_cancer | 分類 | 乳がん (breast cancer) 患者の腫瘍に関するデータで、主に乳がんの分類タスクに使用されます。データには腫瘍の特性に関する情報(腫瘍の半径、テクスチャ、周囲の腫瘍の平滑度など)が含まれており、それぞれのサンプルが「良性」または「悪性」のいずれかに分類されています。 |
load_digits | 分類 | 手書き数字認識のための画像データです。0 から 9 までの手書き数字の画像が含まれており、各画像は 8x8 ピクセルのグレースケール画像として表現されています。機械学習アルゴリズムを使用して手書き数字を識別するために使用できます。 |
load_iris | 分類 | アヤメ(iris)の計測データです。iris データセットは、機械学習の教育と実験用に広く使用されるデータセットの一つです。3 つの異なる種類のアヤメの花の特性が含まれており、各花の 4 つの特徴量が記録されています。これらの特徴量は、がく片(sepal)と花弁(petal)の長さと幅に関するもので、アヤメの種類を分類するために使用できます。 |
load_wine | 分類 | ワインの化学的特性に関するデータセットです。異なる種類のワインの特性に関する情報が含まれており、主にワインの分類タスクや品質評価に使用されます。データにはアルコール濃度、酸度、フェノール類の濃度、色の強さ、色の濃さなど、ワインの化学的特性に関する 13 の特徴量が含まれています。各サンプルは 3 つの異なるワインクラス(種類)に属しています。 |
load_sample_image | 画像 | 指定した画像のデータセットを numpy array として取得できます。
|
ダウンロード可能なデータセット
fetch_
で始まる関数を使うと、インターネット上で公開されている有名なデータセットを読み込むことができます。
関数名 | 用途 | 説明 |
---|---|---|
fetch_california_housing | 回帰 | カリフォルニアの住宅価格に関するデータセットで、カリフォルニア州の異なる地域(ブロックグループ)に関する住宅価格の情報とその地域の特徴に関する情報を含みます。具体的には、以下の特徴量が含まれています:
|
fetch_20newsgroups | 分類 | 20 Newsgroups データセットは、ニュースグループのメッセージからなるテキストデータセットで、クラスタリングやテキスト分類などの自然言語処理タスクのために使用されます。20 の異なるニュースグループが含まれており、それぞれのニュースグループに関するテキストメッセージが含まれています。このデータセットは、カテゴリ分類やテキスト処理の実験に広く使用されます。 |
fetch_20newsgroups_vectorized | 分類 | fetch_20newsgroups と同様ですが、ニュース記事がベクトルデータ(特徴量)化されています。 |
fetch_covtype | 分類 | 木の種類を予測するためのデータセットで、土壌の種類や、標高、傾斜などの情報が含まれています。 |
fetch_kddcup99 | 分類 | KDD99 のネットワーク侵入検知のコンペで用いられたデータで、持続時間やプロトコルなどの情報から攻撃の種類を予測します。 |
fetch_lfw_people | 分類 | LFW(Labeled Faces in the Wild)データセットは、多くの有名人や一般の人々の顔画像です。主に顔認識や顔検出などのコンピュータビジョンタスクの評価に使用されます。顔画像のピクセル値とそれに対応するラベル(各画像の人物の名前)が含まれています。 |
fetch_lfw_pairs | 分類 | 異なる顔写真のペアで、同じ人物の場合と、異なる人物の場合があります。顔認識モデルのトレーニング、人物の同一性認識、シャッフルされた同一性認識など、さまざまなコンピュータビジョンタスクに使用できます。 |
fetch_olivetti_faces | 分類 | Olivetti Research Laboratory が収集した顔画像 (Olivetti Faces) データセットです。40 人の異なる被写体に対する顔画像のコレクションで、各被写体について、10 枚の異なる表情やポーズの画像が含まれています。画像は白黒で、サイズは 64x64 ピクセルです。このデータセットは、顔認識、顔検出、表情認識、顔の特徴量抽出など、さまざまなコンピュータビジョンタスクのトレーニングおよび評価に使用されます。 |
fetch_rcv1 | 分類 | Reuters Corpus Volume I(RCV1)はニュース記事のコレクションで、カテゴリ分類タスクやトピックモデリングなどの自然言語処理タスクに使用できる大規模なテキストデータセットです。RCV1 データセットには、ニュース記事の本文や関連するカテゴリ情報が含まれています。 |
fetch_openml | その他 | OpenML プロジェクトからデータセットをダウンロードします。OpenML は、機械学習コミュニティに対して多くの機械学習データセットを提供するプラットフォームです。OpenML のデータセットは、分類、回帰、クラスタリング、異常検出など、さまざまな機械学習タスクに使用できます。 |
データセットを pandas のデータフレームにする
dataset
モジュールが返すデータは numpy.ndarray
形式になっているので、pandas でデータ処理したいときは、DataFrame
形式に変換する必要があります。
import pandas as pd
from sklearn.datasets import load_diabetes
# 糖尿病のデータセットをロード
diabetes = load_diabetes()
# DataFrame 形式にする
df = pd.DataFrame(data=diabetes.data, columns=diabetes.feature_names)
print(df.head(3))
# 目的変数(糖尿病の進行状況)
print(diabetes.target[:3])
age sex bmi bp s1 s2 s3 \
0 0.038076 0.050680 0.061696 0.021872 -0.044223 -0.034821 -0.043401
1 -0.001882 -0.044642 -0.051474 -0.026328 -0.008449 -0.019163 0.074412
2 0.085299 0.050680 0.044451 -0.005670 -0.045599 -0.034194 -0.032356
s4 s5 s6
0 -0.002592 0.019907 -0.017646
1 -0.039493 -0.068332 -0.092204
2 -0.002592 0.002861 -0.025930
[151. 75. 141.]
import pandas as pd
from sklearn.datasets import load_wine
# ワインのデータセットをロード
wine = load_wine()
# DataFrame 形式にする
df = pd.DataFrame(data=wine.data, columns=wine.feature_names)
print(df.head(3))
# 目的変数(ワインの種類)
print(wine.target[:3])
alcohol malic_acid ash alcalinity_of_ash magnesium total_phenols \
0 14.23 1.71 2.43 15.6 127.0 2.80
1 13.20 1.78 2.14 11.2 100.0 2.65
2 13.16 2.36 2.67 18.6 101.0 2.80
flavanoids nonflavanoid_phenols proanthocyanins color_intensity hue \
0 3.06 0.28 2.29 5.64 1.04
1 2.76 0.26 1.28 4.38 1.05
2 3.24 0.30 2.81 5.68 1.03
od280/od315_of_diluted_wines proline
0 3.92 1065.0
1 3.40 1050.0
2 3.17 1185.0
[0 0 0]