numpyでデータを取り込み、matplotlibで散布図に描画する
配列の扱いがあまり得意でなかったため、pandasばかり使ってnumpyを敬遠していました。
残念ながら仕事で触れる機会が頻繁にありそうなので、このタイミングでおさえていきたいと思います。
今回は簡単に、データを取り込みscatterにプロットしたいと思います。
ライブラリのインポート
$ import numpy as np
$ import matplotlib as plt
ファイルの読み込み
$ data = np.loadtxt('score.txt', skiprows=1)
$ data
array([[ 2., 3., 4., 3., 3., 4., 3., 2., 3., 2.], [ 5., 4., 3., 3., 3., 2., 4., 3., 4., 5.], [ 3., 3., 3., 4., 3., 4., 3., 4., 4., 3.], [ 5., 5., 3., 3., 3., 3., 4., 4., 4., 5.], [ 4., 3., 4., 5., 4., 3., 3., 3., 4., 3.],
...
データをスライスして、先頭行と3列目以降を除外。
$ data = data[1:,0:2]
$ data
array([[ 5., 4.], [ 3., 3.], [ 5., 5.], [ 4., 3.], [ 3., 3.],
1行目をx軸に、2行目をy軸にプロット。
$x=data[:,0]
$y=data[:,1]
$plt.scatter(x,y)
$plt.show()
途中、object型からint型への変換の仕方がよくわからんかった。