[問題] 如何用MLE法估計回歸係數

看板R_Language作者 (JL)時間9年前 (2016/10/16 15:42), 9年前編輯推噓2(2014)
留言16則, 4人參與, 最新討論串1/1
- 問題: 當你想要問問題時,請使用這個類別 [問題類型]: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) [軟體熟悉度]: 新手(沒寫過程式,R 是我的第一次) [問題敘述]: 不知道如何從ols法 改成mle法 [程式範例]: 用OLS法去估 alpha beta時用這樣 F1=function(n) { A=c() B=c() for(i in 1:10000) { X=rnorm(n,0,1) Y=rt(n,10) L=lm(Y~X) A[i]=L$coefficients[1] B[i]=L$coefficients[2] } C=c(mean(A),var(A),mean(B),var(B)) return(C) } 同樣的一件是若要使用MLE法去估 不知該如何輸入 [環境敘述]: 請提供 sessionInfo() 的輸出結果, 裡面含有所有你使用的作業系統、R 的版本和套件版本資訊, 讓版友更容易找出錯誤 [關鍵字]: 選擇性,也許未來有用 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.232.41.75 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1476603778.A.AC9.html

10/16 15:53, , 1F
二者的結果在簡單迴歸不是一樣的嗎?
10/16 15:53, 1F

10/16 15:55, , 2F
標準差不一樣
10/16 15:55, 2F
※ 編輯: jlzl0612 (36.232.41.75), 10/16/2016 16:01:03

10/16 16:05, , 3F
stats4::mle
10/16 16:05, 3F

10/16 16:12, , 4F
不好意思 請問是改在哪邊?
10/16 16:12, 4F

10/16 16:17, , 5F
先試著自訂一個function,這裡有例子 goo.gl/UmtsHx
10/16 16:17, 5F

10/16 16:17, , 6F
做好function後再拿它來套入你的code,可能比較容易
10/16 16:17, 6F

10/16 16:39, , 7F
我記得MLE跟最小平方法出來的標準差只是一個scale
10/16 16:39, 7F

10/16 16:39, , 8F
差異而已
10/16 16:39, 8F

10/16 16:39, , 9F
可以直接用lm做出來之後,自己調整吧
10/16 16:39, 9F

10/16 16:41, , 10F
mle是1/n, least-square是用1/(n-2)
10/16 16:41, 10F

10/16 16:41, , 11F
mle的標準差不是不偏估計輛
10/16 16:41, 11F

10/16 21:23, , 12F
有點好奇 我記得mle/ols beta^hat 的長相是一樣的
10/16 21:23, 12F

10/16 21:23, , 13F

10/16 21:29, , 14F
剛用 lm, glm(gaussian) 取係數 跟(X'X)^X'Y 數值都一致
10/16 21:29, 14F

10/16 21:29, , 15F
上面少惹inverse
10/16 21:29, 15F

10/17 03:37, , 16F
係數一樣沒錯,是標準差的分母差1而已。
10/17 03:37, 16F
文章代碼(AID): #1O0o-2h9 (R_Language)
文章代碼(AID): #1O0o-2h9 (R_Language)