2017年6月22日木曜日

Raspbian Jessie LiteにPython3をインストールする

Raspberry Pi用のOSであるRaspbian Jessieには、デスクトップ環境付きのwith Pixelと軽量版のLiteがある。Raspbian Jessie Liteを起動してみると、with PixelではデフォルトでインストールされているPython3がインストールされていない。そういうわけで、LiteにPython3と、ついでに数値計算用ライブラリのNumpyと科学技術計算ライブラリのScipyもインストールする。


Python3のインストール


パッケージが用意されているのでインストールは簡単。pipもいっしょにインストールする。


インストール後のバージョン確認。



NumpyとScipyのインストール


以前にRaspberry Pi B+のpipでインストールしたときに数時間かかっているので(Raspberry PiのPythonでnumpyとscipyを使う)、とりあえずはNumpyだけpipでインストールしてみる。


1時間半ほどで完了。バージョンは現時点で最新の1.13.0。


続いてScipyもインストールしようとしたが、以下のエラーが発生。


原因を調べようと思ったが、その前にパーケージを探してみるとNumpyもScipyもパッケージが用意されている。1時間半が無駄になったかと思ったが、パッケージの方はバージョンが古い。


気を取り直してapt-getコマンドでScipyをインストール。こちらはコンパイル不要なのですぐに完了する。


インストールされたバージョンは0.14.0。最新バージョンは0.19.1なのでけっこう古い。pipでインストールするときのエラーはいずれ調べることにして、今回はここまで。



NumpyとScipyを使ってみる


xとyの値として、1-9の乱数をそれぞれ10ずつ作成し、yの最大・最小値と傾きを求めるコード。

# ライブラリインポート
from scipy import stats
import numpy as np

# 1-9の乱数を10ずつ作成
x = [np.random.randint(1,10) for i in range(10)]
y = [np.random.randint(1,10) for i in range(10)]

x = np.array(x)
y = np.array(y)

# scipyの統計用モジュールの関数linregressで単回帰分析をする
slope, intercept, r_value, p_value, std_err = stats.linregress(x, y)

print('傾き={:.2f}'.format(slope))

print('最小={}'.format(np.min(y)))
print('最大={}'.format(np.max(y)))

Python3で実行すると以下のような出力を得られる。



0 件のコメント:

コメントを投稿