作者askpeople (就是要問!!!)
看板Statistics
標題[問題] 如何判斷資料是否服從韋伯分布?? (風速)
時間Tue Jul 4 19:41:28 2023
學校的老師出了一題作業,讓我們用統計軟體做 (我是用R)
因為綠能是目前的趨勢,老師用風速資料當題目,請我們判斷風速資料是否服從韋伯分布
?
請問該怎麼做呢?
自己思考: 我可以用R軟體畫出韋伯分布 然後將原本的風速資料也畫出來 看曲線是否接
近,但卡了一些問題如下
(1) 用R可以使用curve 但是下面的參數shape=2, scale=1 是我自己假設 該怎麼找到合
適參數呢?
curve(dweibull(x, shape=2, scale=1),from=0, to=5, col='blue',xlim = c(0,10))
(2) 原本給我的風速資料,該怎麼畫出pdf曲線
以上...是我遇到的困難 或者請版上的高手指點 該怎麼做? 或者有什麼方法可以判斷是
否服從韋伯分布?
感謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 39.10.65.116 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Statistics/M.1688470890.A.6EE.html
1F:推 andrew43: 方法很多,但上課都沒提到相關的方法嗎? 07/04 20:37
2F:→ andrew43: 以資料話pdf可以用kernel density 07/04 20:39
3F:→ andrew43: 也是要參數,但沒有什麼 “最好” 的組合 07/04 20:40
4F:→ recorriendo: Weibull兩個參數 當然不是去慢慢找 07/05 00:51
5F:→ recorriendo: Weilbull fitting也算常見 應早有相關套件 網路搜搜 07/05 00:52
我查到fitdistr來做使用,了解到是用mle來估計參數
我輸入的指令如下:
e2 <- as.data.frame(e[,2])# 我先將資料e以excel匯入 再轉成data.frame
ee2 <- as.numeric(e2) #轉成向量
fitdistr(ee2,"weibull")
但是跑不出來 顯示:
Error in fitdistr(ee2, "weibull") :
'x' must be a non-empty numeric vector
可是....我的資料都沒有0阿? 怎麼會這樣呢? 是資料有問題嗎?
我把x改成 1:100 可以跑
6F:→ yhliu: 其分布函數為 1-e^{-(x/b)^k}, 所以做 負log-log 變換可以 07/05 08:29
7F:→ yhliu: 變成直線,此可利用做為檢驗資料是否服從此分布的方法。 07/05 08:32
8F:推 a22735557: 同樓上,或是找到類似的pattern 做 KS test,或是用 ke 07/05 12:32
9F:→ a22735557: rnel density 試試看 07/05 12:32
※ 編輯: askpeople (27.52.37.121 臺灣), 07/05/2023 22:43:24
※ 編輯: askpeople (27.52.37.121 臺灣), 07/05/2023 22:44:01
※ 編輯: askpeople (27.52.37.121 臺灣), 07/05/2023 22:44:35
10F:→ andrew43: 資料有缺失值,先清理一下 07/06 08:28
剛剛已經跑出來 但是有錯誤如下網址: 請問是什麼問題呢?
我還是有用結果畫圖 發現誤差不小@@
https://lurl.cc/CsE5n
e2 <- as.data.frame(e[,2])
> ee2 <- as.matrix(e2)
> fitdistr(ee2,"weibull")
shape scale
1.58705013 37.41025572
( 0.00584094) ( 0.12270357)
Warning messages:
1: In densfun(x, parm[1], parm[2], ...) : 產生了 NaNs
2: In densfun(x, parm[1], parm[2], ...) : 產生了 NaNs
3: In densfun(x, parm[1], parm[2], ...) : 產生了 NaNs
4: In densfun(x, parm[1], parm[2], ...) : 產生了 NaNs
5: In densfun(x, parm[1], parm[2], ...) : 產生了 NaNs
6: In densfun(x, parm[1], parm[2], ...) : 產生了 NaNs
※ 編輯: askpeople (27.52.37.121 臺灣), 07/06/2023 22:13:23