Pandas での OLS 回帰
OLS 回帰、または Ordinary Least Squares
回帰は、基本的に線形回帰方程式の係数の値を推定する方法です。 この方法では、データの実際の値と予測値の差の 2 乗の合計が減少します。
この記事では、Python の Pandas Data Frame を利用して、OLS 回帰手法を適用する方法を探ります。
パンダ データ フレーム
Python の Pandas ライブラリは、データを操作および分析するためのさまざまなツールとテクノロジを提供します。 データ フレームはそのようなツールの 1つです。
Pandas のデータ フレームは、基本的に、対応するラベルを持つ 2 次元のデータ構造です。 データを表形式で格納する構造です。
DataFrame
で OLS 回帰手法を実行できるようにするには、最初にテスト DataFrame
を作成する必要があります。 これを行う方法は実に簡単です。
まず、前提条件となるすべてのライブラリのインストールについて説明します。 この場合、Pandas と statsmodels
です。
pip install pandas
pip install statsmodels
選択したターミナルで上記のコマンドを実行すると、Pandas および statsmodels
モジュールがまだインストールされていない場合はインストールされます。
前提条件のインストールに関しては、これでほぼ完了です。 これで、データフレームの作成を開始できます。
次のデータフレームには以下が含まれます。
- 学生の名前。
- 所属する国。
- 100 点満点中 3 科目の成績。
コード例:
import pandas as pd
data = {
"Student_Name": ["Anil", "Suharwardy", "Fatina", "John", "Karen"],
"Country": ["India", "India", "Pakistan", "America", "America"],
"Biology": [68, 73, 87, 58, 78],
"Physics": [83, 53, 93, 87, 78],
"Chemistry": [78, 98, 89, 73, 87],
}
data_frame = pd.DataFrame(data=data)
print(data_frame)
出力:
プロフェッショナルで正確な OLS 回帰結果を得るには、8つ以上の値を持つデータを使用する必要があることに注意することが重要です。 この記事のリストは、簡単に理解できるように短縮されています。
Pandas DataFrame で OLS 回帰を実行する
データフレームができたので、従うべきアプローチを理解しましょう。 OLS 回帰の手法と方法を使用して、学生の生物学の成績を、物理学と化学の成績を使用して予測します。
この手法の statsmodels
モジュールを使用して、定義したデータ フレームに対して OLS 操作を実行します。 以下のコードを見て、これを達成する方法を観察してください。
import pandas as pd
import statsmodels.formula.api as sm
data = {
"Student_Name": ["Anil", "Suharwardy", "Fatina", "John", "Karen"],
"Country": ["India", "India", "Pakistan", "America", "America"],
"Biology": [68, 73, 87, 58, 78],
"Physics": [83, 53, 93, 87, 78],
"Chemistry": [78, 98, 89, 73, 87],
}
data_frame = pd.DataFrame(data=data)
response = sm.ols(formula="Biology~Physics+Chemistry", data=data_frame).fit()
print(response.summary())
出力:
観察されたように、生物学的マークを予測するための式を導出し、それを ols()
メソッドにフィードし、後で結果の要約を出力します。
これは、statsmodels
と Pandas ライブラリを使用して、Pandas データフレームで簡単な OLS 回帰操作を実行する方法です。 読んで楽しんでください!
I am Fariba Laiq from Pakistan. An android app developer, technical content writer, and coding instructor. Writing has always been one of my passions. I love to learn, implement and convey my knowledge to others.
LinkedIn