1

mtcarsデータセット( )を使用して回帰直線(線形)を描画していましたmpg ~ cylmpgを使用して単純な線形モデルをcyl実行し、要約を実行しました。

線形モデルの要約からの切片は、グラフ表示と一致しません。

何が起こっているのか理解するのに苦労しています。Rの基本プロット関数を使用して散布図を描画すると、ggplot2と同じ結果が得られます。y軸のスケール制限(0、40)を変更しましたが、うまくいきませんでした。

これが私のコードです

data(mtcars)
library(ggplot2)
p <- ggplot(mtcars, aes(x=cyl, y=mpg)) + geom_point(shape=1) # create graph
p + geom_smooth(method = lm, se=FALSE) # add line
lm.car <- lm(mpg ~ cyl) # create linear model
summary(lm.car) # summary

http://imageshack.us/photo/my-images/213/scatterplot.png/

これが線形モデルの出力です

> summary(lm.car)

Call:
lm(formula = mpg ~ cyl)

Residuals:
    Min      1Q  Median      3Q     Max 
-4.9814 -2.1185  0.2217  1.0717  7.5186 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)  37.8846     2.0738   18.27  < 2e-16

cyl          -2.8758     0.3224   -8.92 6.11e-10 

Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 

Residual standard error: 3.206 on 30 degrees of freedom
Multiple R-squared: 0.7262, Adjusted R-squared: 0.7171 
F-statistic: 79.56 on 1 and 30 DF,  p-value: 6.113e-10 

私が使用した以下の提案に基づいて

data(mtcars)
library(ggplot2)
p <- ggplot(mtcars, aes(x=cyl, y=mpg)) + geom_point(shape=1) +
    xlim(0, 10)# create graph
p + geom_smooth(method = lm, se=FALSE) # add line

出力は次のとおりです。 必要なグラフィカル出力

4

1 に答える 1

2

回帰分析を行うと、値は値が0の場合の値のIntercept大きさを示します。t値の場合37.8846は、値がOの場合は37.8846になることを意味します。yxcylmpg Intercepmpgcyl

ggplot2プロットの回帰直線にはcyl、4から6までの値のみが表示されます(他の値はないため)。

あなたの値の予測値を計算するmpgと、26.38142が得られます。これが、プロットに表示される値です。cyl4

predict(lm.car,data.frame(cyl=4))
       1 
26.38142 
于 2013-03-14T18:40:04.877 に答える