python 回帰直線を求めてグラフ化する
pythonで、回帰直線を求めてグラフ化するサンプルコードを記述してます。pythonのバージョンは3.10.0を使用してます。
環境
- OS windows11 home
- python 3.10.0
numpy・matplotlibインストール
numpyとmatplotlibをインストールされていない方は、pipでインストールしておきます。
pip install numpy
pip install matplotlib
回帰直線を計算
まずは、回帰直線の傾きと切片を求めて、1次関数のグラフを作成します。
import matplotlib.pyplot as plt
import numpy as np
x = np.array([100, 200, 300, 700, 900, 1100, 1200, 1500])
y = np.array([300, 450, 550, 800, 1100, 2000, 2400, 3100])
# 傾きと切片を求める
a = ((x * y).mean() - (x.mean() * y.mean())) / ((x ** 2).mean() - x.mean() ** 2)
b = -(a * x.mean()) + y.mean()
print('傾き=',a,'切片=',b)
# グラフ描画
def f():
z = a * x + b
plt.scatter(x, y)
plt.plot(x, z, color='green')
plt.xlim(0, 2000) # x軸の表示範囲
plt.ylim(0, 3500) # y軸の表示範囲
plt.xlabel("x", fontsize=10) # x軸のラベル
plt.ylabel("y", fontsize=10) # y軸のラベル
plt.grid(True) # 目盛線の表示
plt.tick_params(labelsize = 8) # 目盛線のサイズ
plt.show()
f()
実行結果
-
前の記事
VBA コメントを削除する 2022.07.30
-
次の記事
Oracle Database サブクエリの結果からデータを比較演算子を使って抽出する 2022.07.31
コメントを書く