我有200000行的文件,第三列是它应该是sorted.I这里只给前20行排序一个阵列由另一个在Python
second.txt
0 0 1.200000
0 1 1.200000
0 2 1.200000
0 3 1.200000
0 4 1.200000
0 5 1.200000
0 6 1.200000
0 7 1.200000
0 8 1.200000
0 9 1.200000
0 10 1.200000
0 11 1.200000
0 12 1.200000
0 13 1.200000
0 14 1.200000
0 15 1.200000
0 16 1.200000
0 17 1.200000
0 18 1.200000
0 19 1.200000
阵列应当被用作参考速度
newindex1.txt
0 0
1 0
2 0
3 0
4 0
5 0
6 0
7 0
8 0
9 0
10 0
11 0
12 0
13 0
14 0
15 0
16 0
17 0
18 0
19 0
我要的是采取第三列的值,并将其放置到适当newindex1.txt
索引对。
所需的输出
0 0 1.200000
1 0 1.200000
2 0 1.200000
3 0 1.200000
4 0 1.200000
5 0 1.200000
6 0 1.200000
7 0 1.200000
8 0 1.200000
9 0 1.200000
10 0 1.200000
11 0 1.200000
12 0 1.200000
13 0 1.200000
14 0 1.200000
15 0 1.200000
16 0 1.200000
17 0 1.200000
18 0 1.200000
19 0 1.200000
所有的例子都只是20行,真正的文件是巨大的。
我已经试过这
import numpy as np
from numpy import loadtxt
from operator import itemgetter
s = loadtxt("second.txt", delimiter=" ", unpack=False)
ni = loadtxt("newindex1.txt", delimiter=" ", unpack=False)
for i, l in enumerate(ni):
for m,n,v in s:
s[m,n,v] == ni[i,l]
它不工作
s[m,n,v] == ni[i,l]
IndexError: too many indices
任何想法如何解决这个问题?
你能告诉你想输出的例子实现? – Keatinge
's'只有2维,但你试图用3个索引('m','n','v')来索引它。最后一行你想做什么?更不要说循环,'m','n'和'v'这些都是's'中的* entries *,它们都不是索引(同样适用于'l')。所有代码中唯一的索引是'i'。 – brettb
@Racialz看看编辑后的输出,请! –