【发布时间】:2021-06-05 00:49:48
【问题描述】:
你好,我有这个 df
res1 res4 aa1234
1 1 4 IVGG
2 10 13 RQFP
3 102 105 TSSV
4 112 115 LQNA
5 118 121 EAGT
6 12 15 FPFL
7 132 135 RSGG
8 138 141 SRFP
9 150 153 PEDQ
10 151 154 EDQC
11 155 158 RPNN
12 165 168 TRRG
13 171 174 CNGD
14 172 175 NGDG
15 174 177 DGGT
16 181 184 CEGL
17 195 198 PCGR
18 20 23 NQGR
19 205 208 RVAL
20 32 35 HARF
21 39 42 AASC
22 40 43 ASCF
23 48 51 PGVS
24 57 60 AYDL
25 59 62 DLRR
26 64 67 ERQS
27 65 68 RQSR
28 78 81 ENGY
29 8 11 RPRQ
30 82 85 DPQQ
31 83 86 PQQN
32 86 89 NLND
33 95 98 LDRE
我想对其进行子集化,仅考虑 res1 顺序为 i 和 i
res1 res4 aa1234
29 8 11 RPRQ
6 12 15 FPFL
21 39 42 AASC
22 40 43 ASCF
24 57 60 AYDL
25 59 62 DLRR
26 64 67 ERQS
27 65 68 RQSR
28 78 81 ENGY
30 82 85 DPQQ
31 83 86 PQQN
32 86 89 NLND
9 150 153 PEDQ
10 151 154 EDQC
11 155 158 RPNN
13 171 174 CNGD
14 172 175 NGDG
15 174 177 DGGT
我尝试了一些具有“过滤器”和“子集”功能的东西,但没有得到预期的结果。
所以一般来说,我需要在一个范围 (i-i+4) 中的两行之间有重叠,包括 i+4。
例如,在这 3 行中,行 [9] 和 [10] 之间存在重叠(150-153 与 151-154 重叠),但行 [11] 对应于 res1[10] + 4 (151 +4 = 155)。所以也许一个想法应该是考虑 res1[i] 并检查 res1[i+1] 是否 =
9 150 153 PEDQ
10 151 154 EDQC
11 155 158 RPNN
【问题讨论】:
-
所以
res1应该是<= res4 + 4? -
不考虑 res4,只考虑 res1
标签: r conditional-statements subset