rainningpoet 发表于 2018-5-7 23:17 
看看你服务器 RAM 大小。和你的file 大小。
library(Rtsne)
额,大神,打扰了,可不可以再请教一下,如果要把满足条件的数据对改为四行一组,该怎么改呢?
比如说,数据格式还是和这个一样:
1 E00548:177:HKH53CCXY:4:1101:10003:10029 TACAGACTGTGG CTCTCCTATAGC chr2 184106244 184106312
2 E00548:177:HKH53CCXY:4:1101:10003:10099 TGATACCGGACA GTGCCTCATCTA chr3 139790591 139790643
3 E00548:177:HKH53CCXY:4:1101:10003:10099 TGATACCGGACA GTGCCTCATCTA chr3 139790643 139790591
4 E00548:177:HKH53CCXY:4:1101:10003:10169 CTTCCATAGGCA AGAGTTCACGGA chr6 26713971 26713996
5 E00548:177:HKH53CCXY:4:1101:10003:10169 CTTCCATAGGCA AGAGTTCACGGA chr6 26713996 26713971
6 E00548:177:HKH53CCXY:4:1101:10003:10240 TAGACGTAGACG TCAAGGAGAACC chr14 37255539 37255588
之前找的是第2、3列顺序相反,第5、6列相同,这样的两行,但是现在扩展一下,想找找是否还有另外:这两行的第1列分别等于之前找到的数据对,且这两行互相也满足之前的条件(第2、3列顺序相反,第5、6列相同),所以最后得到的是4行为1对,格式类似于下面这种:
1111 aa bb chr 123 134
1111 aa bb chr 134 123
1222 bb aa chr 134 123
1222 bb aa chr 123 134
之前找的类似于第1、3行这样的,代码是这样
library(dplyr)
library(sqldf)
data001=read.table('1.txt')
head(data001)
glimpse(data001)
data002=cbind(data001,ind=1:nrow(data001))
data003=sqldf('select a.* , b.ind as ind_b from data002 a left join data002 b on a.V2=b.V3 and a.V3=b.V2 and a.ind<>b.ind and a.V5=b.V5 and a.V6=b.V6 ')
data004=data003%>%filter(is.na(ind_b)==FALSE)%>%select(-ind_b)
data004
请问要找这样的四行为一组应该怎么修改呢,sql语句不太懂。