www.crosshyou.info

政府統計の総合窓口のデータや、OECDやUCIやのデータを使って、Rの練習をしています。ときどき、読書記録も載せています。

UCIのDry Bean Datasetのデータ分析1 - データの視覚化

Generated by Bing Image Creator: Photo of many beans and bean flowers blooming in a field

Dry Bean Dataset. (2020). UCI Machine Learning Repository. https://doi.org/10.24432/C50S4B.

今回は、UCIのDry Bean Datasetのデータで、Rを使ってClassificationをしてみようと思います。

7つの種類の豆があるようですが、数の多い2つの豆だけに絞り込んでやってみます。

まず、tidyverseのパッケージの読み込みをしておきます。

read_csv()関数でダウンロードしたファイルのデータを読み込みます。

1万3611行、17列のデータフレームです。

glimpse()関数でどんなものか確認します。

一番最後の変数のClassだけが文字列でその他は数値データです。このClassが豆の種類ですね。

各変数の説明文をDeepL(DeepL翻訳:高精度な翻訳ツール)で翻訳してみました。

1.) Area - 面積(A): ビーンゾーンの面積とその境界内のピクセル数。
2.) Perimeter - 外周 (P): 豆の外周は、その境界の長さとして定義される。
3.) MajorAxisLength - 長軸長(L): 長軸の長さ: 豆から引くことができる最も長い線の両端間の距離。
4.) MinorAxisLength - 短軸の長さ(l): 豆から主軸に垂直に引ける最長の線。
5.) AspectRation - アスペクト比(K): Lとlの関係を定義する。
6.) Eccentricity - 偏心率(Ec): 領域と同じモーメントを持つ楕円の偏心率。
7.) ConvexArea (C): 豆粒の面積を含むことができる最小の凸多角形の画素数。
8.) EquivDeameter - 等価直径 (Ed): 豆粒の面積と同じ面積を持つ円の直径。
9.) Extent - エクステント(Ex): 豆の面積に対するバウンディングボックス内のピクセルの比率。
10.)Solidity (S): 固さ: 凸度ともいう。凸シェルのピクセルと豆のピクセルの比率。
11.)roundness - 真円度(R): 以下の式で計算される: (4piA)/(P^2)
12.)Compactness - コンパクトネス(CO): 物体の丸みを測る: Ed/L
13.)ShapeFactor1 -シェイプファクター1(SF1)
14.)ShapeFactor2 - シェイプファクター2(SF2)
15.)ShapeFactor3 - シェイプファクター3(SF3)
16.)ShapeFactor4 - シェイプファクター4(SF4)
17.)Class - クラス(セカー、バルバニア、ボンベイ、カリ、デルモサン、ホロズ、シラ)

DeepLってほんとうに凄いですよね。

relocate関数でClassを一番左にしておきます。

Classの中でどの種類が多いのかtable()関数で確認します。

DERMASONとSIRAの数が多いですね。この2つでClassificationをやってみましょう。

まずはデータフレームをDERMASONとSIRAだけにfilter()関数を使って絞り込みます。

このDERMASON, SIRA別の各変数の平均値をみてみます。

SIRAのほうが大きいようですね。

つぎにグラフにして、DERMASONとSIRAの違いを視覚化してみましょう。

AreaとPerimeterです。

AspectRationとEccentricityです。

EquivDeamterとExtentです。

Solidityとroundnessです。

CompactnessとAreaです。

これらの散布図を見ると、DERMASONとSIRAは、かなりはっきりとと分類できそうですね。

今回は以上です。

次回は、

www.crosshyou.info

です。