機械学習 - 散布図
散布図
散布図は、データセットの各値がドットで表される図です。
Matplotlibモジュールには、散布図を描画するメソッドがあり、同じ長さの2つの配列が必要です。1つはx軸の値用、もう1つはy軸の値用です。
x = [5,7,8,7,2,17,2,9,4,11,12,9,6]
y = [99,86,87,88,111,86,103,87,94,78,77,85,86]
x
配列は各車の年式を表します。
y
配列は各車の速度を表します。
例
散布図を描画するには、scatter()
メソッドを使用します。
import matplotlib.pyplot as plt
x = [5,7,8,7,2,17,2,9,4,11,12,9,6]
y = [99,86,87,88,111,86,103,87,94,78,77,85,86]
plt.scatter(x, y)
plt.show()
結果:
散布図の説明
X軸は年齢を表し、Y軸は速度を表します。
図から読み取れることは、最速の2台の車はどちらも2年で、最も遅い車は12年であるということです。
注意:車が新しいほど速く走るようですが、それは偶然かもしれません。結局のところ、登録した車は13台だけです。
ランダムデータ分布
機械学習では、データセットに数千または数百万の値を含めることができます。
アルゴリズムをテストしているときに実際のデータがない場合、ランダムに生成された値を使用する必要がある場合があります。
前の章で学んだように、NumPyモジュールはそれを助けてくれます!
通常のデータ分布からの1000個の乱数で埋められた2つの配列を作成してみましょう。
最初の配列の平均値は5.0、標準偏差は1.0に設定されます。
2番目の配列では、平均が10.0、標準偏差が 2.0に設定されます。
例
1000ドットの散布図:
import numpy
import matplotlib.pyplot as plt
x = numpy.random.normal(5.0, 1.0, 1000)
y = numpy.random.normal(10.0, 2.0, 1000)
plt.scatter(x, y)
plt.show()
結果:
散布図の説明
x軸の値5とy軸の値10の周りにドットが集中していることがわかります。
また、x軸よりもy軸の方がスプレッドが広いことがわかります。
プログラミング学習を加速させる
プログラミングをプロの講師に教えてもらいませんか。