我有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看看編輯後的輸出,請! –