2017-07-10 19 views
0

我有大小为10〜文件8-9千兆像:校正用于非常大的文件的多个测试用重复

7  72603 0.0780181622612 
15  72603 0.027069072329 
20  72603 0.00215643186987 
24  72603 0.00247965378216 
29  72603 0.0785606184492 
32  72603 0.0486866833899 
33  72603 0.00

对于每一对数字(第一和第二列)我有p值(第3栏)。 但是,我已经重复对(他们可以在不同的文件中),我想摆脱其中的一个。如果文件较小,我会使用熊猫。例如:

7 15 0.0012423442 
... 
15 7  0.0012423442 

此外,我想适用于此套多校验测试,但价值向量非常大。

是否有可能用Python或R做到这一点?

+0

如果您的文件不适合您的RAM,您可能需要将它们存储在基于数据库或基于文件系统的数据结构中。也许R软件包'ff','sqldf'或'RSQLite'可以提供帮助。也看看这个答案︰https://stackoverflow.com/questions/11969547/sorting-and-removing-duplicates-in-a-ffdf-data-frame-in-r – snaut

回答

1
> df <- data.frame(V1 = c("A", "A", "B", "B", "C", "C"), 
+     V2 = c("B", "C", "A", "C", "A", "B"), 
+     n = c(1, 3, 1, 2, 3, 2)) 
> df 
    V1 V2 n 
1 A B 1 
2 A C 3 
3 B A 1 
4 B C 2 
5 C A 3 
6 C B 2 
> df[!duplicated(t(apply(df, 1, sort))), ] 
    V1 V2 n 
1 A B 1 
2 A C 3 
4 B C 2 
+0

取决于可用于原始海报的RAM是有用的或根本没有用处。 – snaut

相关问题