根据R中的2个因素计算中位数

时间:2018-08-07 01:04:37

标签: r median

我目前正与疯狂的大型数据集堆叠在一起。我想计算R中的平庸中位数,但我希望将其用于特定的图层和区域。例如,每个区域A和层0 --5的dC列的中值。有人知道该怎么做吗?请找到附件的我的数据集的头。提前谢谢了。 1

2 个答案:

答案 0 :(得分:0)

您可以使用aggregate进行此操作。这是一个小例子。

x = rnorm(100)
y = sample(LETTERS[1:3], 100, replace=TRUE)
z = sample(LETTERS[4:6], 100, replace=TRUE)

aggregate(x~y+z, FUN=median)
  y z           x
1 A D -0.11114506
2 B D -0.29459743
3 C D -0.26080279
4 A E -0.27316768
5 B E -0.44661497
6 C E -0.11971012
7 A F  0.36835509
8 B F -0.08730946
9 C F  0.08759923

答案 1 :(得分:0)

获取满足过滤条件的数据框行的一个子集,然后获取该子集的median列中的dC,例如,:

> median(df[df$Layer == '0 - 5' && df$Zone == 'A1',]$dC)