我想要得到的梯度值對R中如何獲得abline的梯度中的R
散點圖線性模型/坡舉例來說,如果我有一個情節:
x <- 1:10
y <- c(0, 0, 1, 0, 1, 1, 0, 1, 1, 1)
plot(x, y)
abline(lm(y ~ x))
散點圖現在有一條線,爲此我需要知道梯度。理想情況下,我想要的是可以計算各種x/y組合的漸變的函數,而不必每次繪製圖形。我可以自己創建這個函數,但是我被困在如何獲得漸變。
我想要得到的梯度值對R中如何獲得abline的梯度中的R
散點圖線性模型/坡舉例來說,如果我有一個情節:
x <- 1:10
y <- c(0, 0, 1, 0, 1, 1, 0, 1, 1, 1)
plot(x, y)
abline(lm(y ~ x))
散點圖現在有一條線,爲此我需要知道梯度。理想情況下,我想要的是可以計算各種x/y組合的漸變的函數,而不必每次繪製圖形。我可以自己創建這個函數,但是我被困在如何獲得漸變。
使用您的數據和例子
x <- 1:10
y <- c(0, 0, 1, 0, 1, 1, 0, 1, 1, 1)
plot(x, y)
保存你傳遞給abline線性模型,可以在在線進行
abline(mod <- lm(y ~ x))
然後檢查使用coef()
模型mod
係數功能
coef(mod)
R> coef(mod)
(Intercept) x
0.06667 0.09697
「斜率」是第二個係數cient。如果要提取只是一個子集由coef()
返回的載體,如
coef(mod)[2]
R> coef(mod)[2]
x
0.09697
請注意,我不建議分配給對象作爲參數的一部分,其他功能像我上面那樣。如果你的代碼或腳本變得很大,那麼這些事情可能更難以追蹤或一個一個地點。我通常更喜歡自己創建對象。對於上面的例子,那將會意味着做
mod <- lm(y ~ x)
abline(mod)
這不是一個主要的區別,但它更容易發現其中產生mod
以及如何。
一個簡單的線性迴歸模型有兩個係數,您可以使用coef函數進行提取。斜率是第二個係數。
x <- 1:10
y <- c(0, 0, 1, 0, 1, 1, 0, 1, 1, 1)
fit.lm <-lm(y ~ x)
slope <- coef(fit.lm)[2]
'lm(y〜x)$係數[2]'給出了這個例子中直線的斜率。這就是你要找的所有東西嗎? –
@JakeBurkhead Minor nitpick:通常'coef(lm(y〜x))[2]'是首選。 – joran