2017-02-13 94 views
0

所以,我花了一些時間環顧四周,但沒有找到我正在尋找的答案。我有兩個數據文件,data1和data2,我從txt中導入。如何在Python上添加一個不同大小的矩陣到另一個矩陣?

每一個都是一個矩陣,數據1有N1行和2列,data2也有N2行和2列。請注意,N1不等於N2。 我想製作第三個矩陣data3,前兩列是來自data1的兩列,另外兩列是來自data2的列。而且,它們應該具有相同的長度(也就是說,我們必須通過消除矩陣中超出更大的條目來強制N1 = N2)。

總結:在這種情況下,我們應該得到一個矩陣N 4,其中N是最小(N1,N2)。

任何人都可以幫忙嗎? :)

+0

看起來像你有一個很好的回答你問題。也許你應該接受它? –

回答

0

如果你的矩陣是列表的列表,那麼這將它們合併爲你描述:

[data1[i] + data2[i] for i in range(min(len(data1), len(data2)))] 

如果你想將它們直接從你能做到這一點結合文件:

data1 = [line.strip() for line in open('data1.txt').readlines()] 
data2 = [line.strip() for line in open('data2.txt').readlines()] 
for first, second in zip(data1, data2): 
    print('{0} {1}'.format(first, second)) 

如果你不想讀這兩個文件到內存中,你可以這樣做:

data1 = open('data1.txt') 
data2 = open('data2.txt') 
while True: 
    first = data1.readline().strip() 
    second = data2.readline().strip() 
    if not first or not second: 
     break 
    print('{0} {1}'.format(first, second)) 
相關問題