看板 R_Language 關於我們 聯絡資訊
我de了數天的bug, 終於找到程式結果不如預期的原因(時間就在debug中度過). 是quantile非常吃樣本個數, 雖然原先就知道, 但以為這是個小事 哪知當樣本數小於20跟大於20時. 同一組樣本算出來的95%卻落差非常多. 舉例來說, 我的資料如下. x17 = c(-95.290065, -94.676170, -94.042493, -93.766582, -93.281851, -92.621728, -92.275779, -91.985500, -86.475105, -80.372520, -80.040033, -78.674849, -68.573205, -60.486220, -57.897714, -4.204705, 119.349514) x31 = c(-95.747361, -94.438780, -94.198810, -93.922347, -93.881117, -93.788013, -93.658992, -93.609898, -93.599487, -93.599094, -93.533554, -93.517688, -93.478389, -93.475430, -93.364654, -93.048528, -92.872143, -92.533137, -90.225752, -89.077365, -84.827016, -84.166512, -69.243811, -68.747692, -65.920400, -62.867256, -56.184730, -48.477508, 9.279569, 10.153318, 264.201379) x17 = rep(x17, 17); x31 = rep(x31, 31) quantile(x17, 0.95, type=6); quantile(x17, 0.95, type=7) quantile(x31, 0.95, type=6); quantile(x31, 0.95, type=7) quantile的default是type=7 (R的預設值) 現在我想讓這個type在這整隻程式裡全部改成type=6 (matlab & spss 都用這個, 也是我比較希望的算法.) 請問有什麼方法可以讓我電腦裡的關於quantile的type全改成type=6 一個個改也是可以, 只是這隻程式用到太多次quantile, 有的還寫在aggregate裡面. 怕會漏掉. 感謝. -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.241.16.98 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1447683861.A.A9F.html ※ 編輯: Edster (111.241.16.98), 11/16/2015 22:27:38
Edster: 貼錯資料, 已修改. 11/16 22:28
Edster: 最後我用取代 na.rm=TRUE 成na.rm=TRUE, type=6 11/16 22:34
Edster: 花了比編輯這篇文章還少的時間解決這件事. 11/16 22:35
Edster: 不過我還是想知道如何變成R中的預設值. 11/16 22:35
Wush978: 在.Rprofile裡面把quantile這個函數改掉? 11/16 22:43
Wush978: 不過如果你呼叫quantile的函數是來自套件的話,就改不到 11/16 22:44