区间数据的类似于直方图的摘要

时间:2015-06-22 11:29:05

标签: r statistics histogram

如何在R?

中获得类似于直方图的区间数据摘要

我的MWE数据有四个间隔。

interval  range
Int1      2-7
Int2      10-14
Int3      12-18
Int4      25-28

我想要一个类似于直方图的函数,它计算间隔Int1-Int4如何跨越固定大小的区间分割范围。 函数输出应如下所示:

bin     count  which
[0-4]   1      Int1
[5-9]   1      Int1
[10-14] 2      Int2 and Int3
[15-19] 1      Int3
[20-24] 0      None
[25-29] 1      Int4

这里的范围是[minfloor(Int1,Int2,Int3,Int40),maxceil(Int1,Int2,Int3,Int4))= [0,30]并且有六个大小= 5的箱子。

我非常感谢任何指向R包或实现我想要的功能的函数的指针。

更新:

到目前为止,我有一个来自IRanges软件包的解决方案,该软件包使用称为NCList的快速数据结构,根据用户,它比Interval Search Trees更快。

> library(IRanges)
> subject <- IRanges(c(2,10,12,25), c(7,14,18,28))
> query <- IRanges(c(0,5,10,15,20,25), c(4,9,14,19,24,29))
> countOverlaps(query, subject)
[1] 1 1 2 1 0 1

但我仍然无法得到重叠的范围。如果我通过,将会更新。

1 个答案:

答案 0 :(得分:1)

使用for(;;),您应该使用IRangesfindOverlaps代替mergeByOverlaps。默认情况下,它不会返回无匹配

我会留给你的。相反,将使用countOverlaps包中的foverlaps()显示替代方法:

data.table