我有一张桌子要放
实际上,我将一次使用四行作为参考集,将其与以下四组中的每一行进行比较。
具体来说,给定组x中的一行,我要计算前一组(即组x-1)中有多少行的值小于或等于感兴趣行中的值。
我想为每一行执行此操作。
因此,我要为第二组的四行中的每一行(例如5到8)计算具有小于或等于第一行中的值(例如1到4行)的行数。然后第5至8行成为接下来的四行(9至12)的下一个参考组。等等...
Row Values
1 1.35
2 0.71
3 1.00
4 0.07
5 0.53
6 0.12
7 0.36
8 2.03
9 3.83
10 1.30
11 2.17
12 1.71
13 1.52
14 1.27
15 0.29
16 0.05
17 0.14
结果如下所示:
Row Values Count
1 1.35
2 0.71
3 1.00
4 0.07
5 0.53 1
6 0.12 1
7 0.36 1
8 2.03 4
9 3.83 4
10 1.30 3
11 2.17 4
12 1.71 3
13 1.52 1
14 1.27 0
15 0.29 0
16 0.05 0
17 0.14 1
最佳答案
您可以尝试(如果df
是您的data.frame):
sdf<-split(df$Values,(df$Row-1)%/%4)
c(rep(NA,4),unlist(Map(f=function(x,y)
findInterval(x,sort(y)),sdf[-1],sdf[-length(sdf)]),use.names=F))
#[1] NA NA NA NA 1 1 1 4 4 3 4 3 1 0 0 0 1
关于r - 与数据帧中交替的行组进行比较时的计数频率,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31440920/