[問題] 請問R的問題(分類)

看板Statistics作者 (黑一半)時間17年前 (2008/11/27 01:58), 編輯推噓1(103)
留言4則, 3人參與, 最新討論串1/1
請問一下我如果要算一個data裡面 "高於全部平均的部份的平均" 更一般化 就是說 要把一個data裡面符合某條件值的挑出來另成一個新dataset來做一些運算 有沒有比較好用的指令呢? 我目前是用for迴圈 例如 x<- c(1,2,3,4,5,6,7,8,9,10) meanx<- mean(x) for(i in 1:length(x)){if (x[i]>meanx) x[i]=x[i] else x[i]=0} uppermeanx<- sum(x)/length(x[x!=0]) ) 看起來就整個對R不熟的樣子 請問有沒有更快速的算法? 謝謝幫忙! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.216.115.68

11/27 05:35, , 1F
這一行是你要的?? mean(which(x>mean(x)))
11/27 05:35, 1F

11/27 05:53, , 2F
上面寫錯 少一個字 mean(x[which(x>mean(x))])
11/27 05:53, 2F

11/27 06:08, , 3F
上面的which是多餘的, mean(x[x>mean(x)]) 即可.
11/27 06:08, 3F

11/28 19:07, , 4F
謝謝兩位
11/28 19:07, 4F
文章代碼(AID): #19BOv3X8 (Statistics)