2012-07-28 90 views
1

我有用另一個程序進行迴歸分析的結果,我想用R測試它們是否顯着。我知道ls.diag()計算迴歸結果的標準錯誤和t檢驗,但它需要一個非常具體的輸入格式(即lsfit()的結果),所以我不認爲我可以使用它。 r中是否有函數計算迴歸分析的標準誤差和t檢驗,從而使我可以簡單地通過手動給出相關係數?計算迴歸係數在R中是否具有統計顯着性

+0

從您的描述中不清楚您從「其他程序」中得到了什麼,但我確信回到原始數據並完成R. – 2012-07-28 16:15:09

+0

取決於的所有內容的工作要少得多。如果OP有係數和他們的標準誤差,那麼很容易(儘管她提到了「計算標準誤差」),但我們確實需要知道其他程序產生了什麼,如果它只是係數那麼答案是「否」 – 2012-07-28 16:26:06

+0

這些是迴歸分析的結果,它可以控制樣本中類羣之間的系統發育相關性,R有一個函數(pgls()在caper中)來做到這一點,但它不適用於我的部分數據來自OP我有係數和特徵方差,但是沒有係數方差 – Annemarie 2012-07-28 18:00:36

回答

3

我不敢肯定這是你看着什麼,但這裏有一個指導

# this is a model obtained from ?lm 
ctl <- c(4.17,5.58,5.18,6.11,4.50,4.61,5.17,4.53,5.33,5.14) 
trt <- c(4.81,4.17,4.41,3.59,5.87,3.83,6.03,4.89,4.32,4.69) 
group <- gl(2,10,20, labels=c("Ctl","Trt")) 
weight <- c(ctl, trt) 
lm.D9 <- lm(weight ~ group) 
summary(lm.D9) this is our target 

假設我們只有迴歸係數,其標準誤差和樣本量

beta <- coef(lm.D9) 
errorBeta <- summary(lm.D9)$coefficients[,2] 
n <- length(weight) # the sample size 
k <- length(beta) # number of regression parameters 

我認爲這是你的情況,如果你沒有係數標準錯誤,那麼你必須估計它們,這很容易。

一旦你的迴歸係數及其標準差,可以估算的T-STAT:

t_stats <- beta/errorBeta 

經驗法則指出,如果| t_stats | > = 2,則係數在5%的水平上具有統計顯着性。但是,如果你想知道的p值,然後使用:

pt(abs(t_stats), n-k, lower.tail=FALSE)*2 

如果p值> 0.05,則關聯繫數並不在該級別的統計顯著。

所有你需要知道的係數,其標準誤差和樣本量。否則,你不會這樣做。

+0

謝謝Jilber!聽起來和我所需要的完全一樣你說得對,我只有係數,沒有其他的東西我知道係數標準誤是迴歸係數方差的平方根,但我沒有迴歸係數的方差 - 這是一個問題嗎?你說估計它們很容易,你能告訴我怎麼回事嗎? – Annemarie 2012-07-28 18:02:49

+0

首先,您必須估計殘差的方差,它僅僅是殘差平方和除以nk,使用此結果並假設您有數據集,則僅將殘差的方差乘以設計矩陣{(X'X )-1}。這很奇怪,你沒有標準錯誤,如果你有估計,你必須有標準錯誤。無論如何,你可以閱讀任何經濟計量學教科書,以找到正確的說明。 – 2012-07-28 18:35:45

+0

謝謝Jilber,這對我有很大幫助! – Annemarie 2012-07-28 19:20:02