Python での一変量線形回帰の例

PHPz
PHPzオリジナル
2023-06-09 23:04:45775ブラウズ

Python は非常に人気のあるプログラミング言語であり、その強力な科学計算機能とデータ処理機能により、データ分析や機械学習の分野で広く使用されています。この記事では、データ モデリングと予測に Python で一変量線形回帰を使用する方法を紹介し、例を通じてその実際の応用例を示します。

まず第一に、線形回帰とは何ですか?統計と機械学習では、線形回帰は 2 つの変数間の関係を確立するために使用される方法です。単変量線形回帰では、説明変数 (独立変数) と応答変数 (従属変数) が 1 つだけあります。

次に、Python で scikit-learn ライブラリを使用して一変量線形回帰を実装する方法を紹介します。 scikit-learn は、データ モデリングと視覚化のためのツールが多数含まれている人気の機械学習ライブラリです。

ステップ 1: ライブラリとデータをインポートする
まず、いくつかのライブラリをインポートする必要があります。この記事では、NumPy、Pandas、Matplotlib、Scikit-learn を使用します。

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression

次に、必要なものを準備する必要がありますデータを分析するため。この例では、非常に単純なデータ セットである、住宅のサイズと価格に関するデータ セットを使用します。

Data

df = pd.DataFrame({'エリア': [1400, 1600, 1700, 1875, 1100, 1550, 2350, 2450, 1425, 1700],

               '价格': [245000, 312000, 279000, 308000, 199000, 219000, 405000, 324000, 319000, 255000]})

print(df)

出力は次のとおりです:

面积      价格

0 1400 245000
1 1600 312000
2 1700 279000
3 1875 308000
4 1100 199000
5 1550 219000
6 2350 405000
7 2450 324000
8 1425 319000
9 1700 255000

#ステップ 2: データ分析と視覚化
データをインポートしたら、データ分析と視覚化を開始できます。横軸が住宅面積、縦軸が販売価格である散布図を描きましょう。

plt.scatter(df['area '], df['price'])
plt.xlabel('area')
plt.ylabel('price')
plt.show()

出力:

この散布図は、家の面積が増加するにつれて、販売価格も増加することを示しています。したがって、これら 2 つの変数の間には線形関係がある可能性があります。

ステップ 3:線形回帰モデルの近似
これで、線形回帰モデルの近似を開始できます。scikit-learn では、LinearRegression() 関数を使用して線形モデルを構築する必要があります。

X = df[[ 'area']]
Y = df['price']
model = LinearRegression().fit(X, Y)

ここでは、面積を独立変数 X に代入します。価格を従属変数 Y に渡し、LinearRegression() 関数に渡します。モデルをフィッティングした後、傾きと切片を確認できます。

print('Slope:', model.coef_)
print ('切片:'、モデル .intercept_)

出力:

傾き: [126.88610769]
切片: 36646.35077294225

ステップ 4: 視覚化の結果
完了モデルのトレーニングでは、Matplotlib を使用して回帰直線を描画し、住宅価格を予測できます。次のコードは、新築住宅エリアの販売価格を予測する方法を示します。

Prediction

y_pred = model.predict([[2000]])
print('予測販売価格:', y_pred)

回帰直線を描く

plt.scatter(df['area'], df['price'])
plt.plot(df['area'], model.predict(df[['area']]) 、color ='r')
plt.xlabel('area')
plt.ylabel('price')
plt.show()

出力:

Yes 回帰直線がデータ ポイントに適合していることを確認すると、適合モデルを使用して新築住宅の販売価格を平方フィート単位で予測できます。

この記事では、Python で scikit-learn ライブラリを使用して、データの準備、データ分析と視覚化、線形回帰モデルのフィッティング、結果の予測などの一変量線形回帰を実装する方法を紹介します。線形回帰は、2 つの変数間の関係を調査し、予測を行うために使用できるシンプルかつ強力なツールであり、データ分析や機械学習に幅広く応用できます。

以上がPython での一変量線形回帰の例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。