R でべき乗回帰を実行する方法 (ステップバイステップ)
べき乗回帰は、次の形式をとる非線形回帰の一種です。
y = ax b
金:
- y:応答変数
- x:予測変数
- a、b: xとyの関係を説明する回帰係数
このタイプの回帰は、応答変数が予測変数の累乗に等しい状況をモデル化するために使用されます。
次の段階的な例は、R の特定のデータセットに対して検出力回帰を実行する方法を示しています。
ステップ 1: データを作成する
まず、2 つの変数 x と y の偽のデータを作成しましょう。
#create data
x=1:20
y=c(1, 8, 5, 7, 6, 20, 15, 19, 23, 37, 33, 38, 49, 50, 56, 52, 70, 89, 97, 115)
ステップ 2: データを視覚化する
次に、散布図を作成して、x と y の関係を視覚化しましょう。
#create scatterplot
plot(x, y)
グラフは、2 つの変数間に明確な力関係があることを示しています。したがって、線形回帰モデルではなく、べき乗回帰方程式をデータに適合させることが賢明であると思われます。
ステップ 3: 検出力回帰モデルを当てはめる
次に、 lm()関数を使用して回帰モデルをデータに近似し、モデルを近似するときに R が応答変数 log と予測子変数 log を使用するように指定します。
#fit the model model <- lm(log(y)~ log(x)) #view the output of the model summary(model) Call: lm(formula = log(y) ~ log(x)) Residuals: Min 1Q Median 3Q Max -0.67014 -0.17190 -0.05341 0.16343 0.93186 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 0.15333 0.20332 0.754 0.461 log(x) 1.43439 0.08996 15.945 4.62e-12 *** --- Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 Residual standard error: 0.3187 on 18 degrees of freedom Multiple R-squared: 0.9339, Adjusted R-squared: 0.9302 F-statistic: 254.2 on 1 and 18 DF, p-value: 4.619e-12
モデル全体の F 値は 252.1 で、対応する p 値は非常に低く (4.619e-12)、モデル全体が有用であることを示しています。
出力テーブルの係数を使用すると、近似された検出力回帰式が次のようになることがわかります。
ln(y) = 0.15333 + 1.43439ln(x)
eを両辺に適用すると、方程式を次のように書き換えることができます。
- y = e 0.15333 + 1.43439ln(x)
- y = 1.1657x 1.43439
この方程式を使用して、予測子変数xの値に基づいて応答変数yを予測できます。
たとえば、 x = 12 の場合、 y は41.167になると予測します。
y = 1.1657(12) 1.43439 = 41.167
ボーナス:このオンライン検出力回帰計算ツールを自由に使用して、指定された予測子と応答変数の検出力回帰式を自動的に計算できます。