[問題] 如何計算median和trimmed mean

看板R_Language作者 (From Wealth to Power)時間10年前 (2014/10/08 14:56), 10年前編輯推噓0(009)
留言9則, 2人參與, 最新討論串1/1
[問題]: 如何不使用內建程式計算出median和trimmed mean [問題類型]: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) [軟體熟悉度]: 新手(沒寫過程式,R 是我的第一次) [問題敘述]: 最近剛開始學習R,想要練習看看可不可以自己建立function來計算 一些簡單的數值,例如mean等等。 my.mean = function(x){ sum(x)/length(x) } 這是我剛剛寫出來的可以計算mean的function。但我想要如法炮製寫出可以計算median 和trimmed mean的function就卡關了。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 24.205.10.29 ※ 文章網址: http://www.ptt.cc/bbs/R_Language/M.1412751365.A.9B0.html ※ 編輯: Zakaria (24.205.10.29), 10/08/2014 14:59:13

10/08 15:07, , 1F
中位數就是先用sort()或order()排序後取中間的值,並注
10/08 15:07, 1F

10/08 15:08, , 2F
意奇數和偶數用if()分開處理。
10/08 15:08, 2F

10/08 15:09, , 3F
trimmed mean要先知道你希望怎麼砍頭砍尾才能說下去。
10/08 15:09, 3F

10/08 15:09, , 4F
支持你從基本功開始練習起。加油。
10/08 15:09, 4F

10/09 13:14, , 5F
function(s,per){s<-sort(s) ;
10/09 13:14, 5F

10/09 13:20, , 6F
x <- ceiling(length(s)*(100-per)/100)
10/09 13:20, 6F

10/09 13:20, , 7F
y <- ceiling(length(s)*per/100)
10/09 13:20, 7F

10/09 13:20, , 8F
return(s[x:y])}
10/09 13:20, 8F

10/09 13:20, , 9F
要 ceiling, trunc, 還是 round 就看你自己決定
10/09 13:20, 9F
文章代碼(AID): #1KDE05cm (R_Language)
文章代碼(AID): #1KDE05cm (R_Language)