作者andrew43 (討厭有好心推文後刪文者)
看板R_Language
標題Re: [問題] signifi.code
時間Mon Apr 6 01:24:47 2015
我舉個例看你可以了解多少。
這不是從 R 的功能達成的,而是從原理
t = (beta_hat - beta) / (std error)
直接算來的。
x1 <- c(3,5,2,6,3,2,3)
x2 <- c(3,6,3,5,6,4,2)
y <- c(1,2,3,4,5,6,7)
fit <- lm(y ~ x1 + x2)
sol <- summary(fit)
# 求 H0: beta = 0 的雙尾檢驗 p 值
t.val.0 <- abs(sol$coefficients[,1] - 0) / sol$coefficients[,2]
2 * pt(t.val.0, df = 4, lower.tail=F)
# 求 H0: beta = 1 的雙尾檢驗 p 值
t.val.1 <- abs(sol$coefficients[,1] - 1) / sol$coefficients[,2]
2 * pt(t.val.1, df = 4, lower.tail=F)
也可以藉由 package aod 的 wald.test()
# 求 H0: beta = 1 的雙尾檢驗 p 值
library(aod)
wald.test(b = coef(fit), Sigma = vcov(fit), H0 = 1, Terms = 1, df = 4)
wald.test(b = coef(fit), Sigma = vcov(fit), H0 = 1, Terms = 2, df = 4)
wald.test(b = coef(fit), Sigma = vcov(fit), H0 = 1, Terms = 3, df = 4)
※ 引述《markbaseball (Mark)》之銘言:
:
: - 問題: 當你想要問問題時,請使用這個類別
:
: [問題類型]:
:
: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來)
:
: [軟體熟悉度]:
: 請把以下不需要的部份刪除
: 新手(沒寫過程式,R 是我的第一次)
: [問題敘述]:
: 請問各位在回歸分析時,預設的Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
: 但是,我現在要檢定的是係數是否異於1,不是0。請問有辦法更改預設值嗎?
: 謝謝各位的幫忙
: [程式範例]:
--
http://apansharing.blogspot.com/
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 125.230.71.109
※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1428254690.A.A02.html
推 markbaseball: 那請問要如何知道是否顯著?再去查表嗎? 04/06 01:46
→ markbaseball: R的功能沒有辦法修改預設的顯著值嗎? 04/06 01:47
→ andrew43: 不是已經求出p-value給你了嗎? 04/06 02:37
推 markbaseball: 那請問std error為什麼長成那樣? 04/06 09:50
※ 編輯: andrew43 (125.230.82.74), 04/06/2015 15:14:16
※ 編輯: andrew43 (125.230.82.74), 04/06/2015 15:21:16
※ 編輯: andrew43 (125.230.82.74), 04/06/2015 15:32:05
→ markbaseball: 少了sqrt*n吧! 04/06 20:11
→ celestialgod: 哪裏有少? 他算出來已經除過了 04/07 08:43