我想根據特定列R中聚集的一些數據。 示例數據如下。R:總在行,如果X小於價值,不聚集若不
> d <- data.frame(POS=c(1,2,2,2,3,4,4,5), Dist=c(111,6,9,58,250,4,65,111),Read=c(1,2,6,6,25,1,8,11))
> print(d)
POS Dist Read
1 1 111 1
2 2 6 2
3 2 9 6
4 2 58 6
5 3 250 25
6 4 4 1
7 4 65 8
8 5 111 11
我希望做的是根據列計算跨行平均讀取僅在距離欄小於100。所以,在POS欄,我想第1行獨處作爲組1,然後計算第2,3排的平均值作爲第3組,計算第6排的平均值(平均值= 4.5)。
「真實」數據集沒有POS列,並且長度> 24,000行,所以我寧願不識別哪些行應該被手動平均。
你可以試試'庫(data.table); setDT(df)[,M:= mean(W23540_02 [Distance..2.1。<100]),by = POS] [is.na(M),M:= as.double(W23540_02)]',儘管I'我不知道你是怎麼拿出那個'55.7'的。 –