- 论坛徽章:
- 0
|
本帖最后由 newfinder 于 2014-10-08 00:00 编辑
回复 34# yestreenstars
大侠,还是得麻烦一下,我知道自己有点贪心了,但是那天在shell版发的这个帖子虽然被解决了,还是有点小问题,因为我的数据大点而且我那天贴出的格式并不是完全与我的数据模式一样,所以还是想请大侠帮忙指点一下。
data1的内容如下:
name1 range1:1-4 4
name1 range1:7-11 5
name2 range1:13-16 4
name2 range1:20-25 6
name2 range2:3-4 2
name1 range2:10-15 6
name1 range2:18-23 6
name2 range3:5-9 5
name2 range3:11-15 5
name1 range3:18-22 5
…………
data2的内容如下:
name1 range1:1-3 3
name1 ragne1:4-6 3
name2 range1:17-19 3
name1 range1:21-24 4
name2 range1:26-28 3
name1 range2:4-6 3
name2 range2:8-9 2
name1 range2:12-16 5
name2 range3:3-6 4
name2 range3:10-12 3
…………
想根据第二列的数据输出这两个数据集的共同区域及差异区域。
共同区域定义的标准为:只要有一个数字重叠就为一个共同区域,如1-2、2-3就为一个共同区域
差异区域定义的标准为:没有一个数字重叠
按照这个标准来做的话,上面的这两个数据集的结果应该为:
data1_diff:
name1 range1:7-11 5
name2 range1:13-16 4
name1 range2:18-23 6
naem1 range3:18-22 5
data2_diff:
name2 range1:17-19 3
name2 range1:26-28 3
name2 range2:8-9 2
两个数据集共同的区域为:
data_comm:
name1 range1:1-4,1-3,4-6 4,3,3
name2,name1 range1:20-25,21-24 6,4
name2,name1 range2:3-4,4-6 2,3
name1 range2:10-15,12-16 6,5
name2 range3:5-9,3-6 5,4
name2 range3:11-15,10-12 5,3
(最后两行不是这样的 : name2 range3:5-9,3-6 5,4 11-15,10-12 5,3,标红的是想要得到的格式)
|
|