メインコンテンツまでスキップ

OpenAIのAPIを使用しています。正確性の保証はできませんので、ご注意ください。

回帰分析

回帰分析は、データを使って関係性を見つけ出し、未来の値を予測する手法です。例えば、身長と体重の関係や、気温の変化、売上予測など、さまざまなデータを予測できます。

線形回帰

線形回帰は、データ間の関係を直線で表す回帰の一種です。例えば、以下の表にあるような、ある子どもたちの身長と体重のデータがあります。

身長 (cm)体重 (kg)
10020
11024
12028
13032

このデータから、身長と体重の関係を表す直線を見つけることができます。この直線を使って、身長が分かれば、おおよその体重を予測できます。

線形回帰の数式は以下のようになります。

y = ax + b

ここで、yは予測される体重、xは入力される身長、abは線形回帰で求める係数です。

Pythonコードで線形回帰を試す

まず、numpysklearnをインストールしましょう。以下のコマンドを実行して、必要なパッケージをインストールします。

pip install numpy scikit-learn

以下のPythonコードは、上記の身長と体重のデータを使って線形回帰する例です。

import numpy as np
from sklearn.linear_model import LinearRegression

# 身長と体重のデータ
height = np.array([100, 110, 120, 130]).reshape(-1, 1)
weight = np.array([20, 24, 28, 32])

# 線形回帰モデルを作成
model = LinearRegression()
model.fit(height, weight)

# 身長が140cmの場合の体重を予測
predicted_weight = model.predict([[140]])
print(f"身長140cmの子どもの予測体重: {predicted_weight[0]:.1f}kg")

このコードは、sklearnライブラリのLinearRegressionクラスを使って線形回帰します。身長が140cmの子どもの体重を予測すると、結果は36kgとなります。

まとめ

回帰分析は、データを使って関係性を見つけ出し、未来の値を予測するための手法です。線形回帰は、データ間の関係を直線で表現する一般的な回帰の方法で、身長と体重の関係や気温の変化など、さまざまなデータを予測できます。Pythonを使って線形回帰を実装することも簡単で、numpysklearnライブラリを利用することで、データを基に予測できます。