Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在python中对两个文件逐列求和_Python_Python 2.7_Text - Fatal编程技术网

在python中对两个文件逐列求和

在python中对两个文件逐列求和,python,python-2.7,text,Python,Python 2.7,Text,我有两个大小和列数完全相同的文件。我想将第一个文件的第I^列添加到第二个文件的第I^列。它们是用python实现这一点的好方法吗 file1 a a a a a a a a a a a a a a a a a a file2 b b b b b b b b b b b b b b b b b b 我想: (a+b) (a+b) (a+b) (a+b) (a+b) (a+b) (a+b) (a+b) (a+b) (a+b) (a+b) (a+b) (a+b) (a+b) (a+b) (a+b)

我有两个大小和列数完全相同的文件。我想将第一个文件的第I^列添加到第二个文件的第I^列。它们是用python实现这一点的好方法吗

file1
a a a a a a
a a a a a a
a a a a a a

file2
b b b b b b
b b b b b b
b b b b b b
我想:

(a+b) (a+b) (a+b) (a+b) (a+b) (a+b)
(a+b) (a+b) (a+b) (a+b) (a+b) (a+b)
(a+b) (a+b) (a+b) (a+b) (a+b) (a+b)

编辑:以上只是我的一个更复杂问题的简化。每个文件都有数千行,我有许多文件(~100)可以执行此类操作。

对于此类操作,数据帧是一个很好的选择。它允许对整个数据帧(矩阵)进行操作,例如
df\u one.添加(df\u two)

1将文件中的数据读取到数据帧中:(示例:)


2如图所示添加两个数据帧:

我认为这将对您有所帮助

with open("file1") as a, open("file2") as b:
    x = [[int(i) for i in u.split()] for u in a.readlines()]
    y = [[int(i) for i in v.split()] for v in b.readlines()]
    n = len(x)
    m = len(x[0])
    ans = ""
    for i in xrange(n):
        for j in xrange(m):
            ans += str(x[i][j]+y[i][j]) + " "
        print ans[:-1]
        ans = ""

您可以使用
numpy.loadtxt()

它将接受您想要的元素级字符串连接,甚至更多:

print('('+a+'+'+b+')')
#array([['(a+b)', '(a+b)', '(a+b)', '(a+b)'],
#       ['(a+b)', '(a+b)', '(a+b)', '(a+b)'],
#       ['(a+b)', '(a+b)', '(a+b)', '(a+b)']], dtype=object)

print(a+b)
#array([['ab', 'ab', 'ab', 'ab'],
#       ['ab', 'ab', 'ab', 'ab'],
#       ['ab', 'ab', 'ab', 'ab']], dtype=object)

 print(3*a)
#array([['aaa', 'aaa', 'aaa', 'aaa'],
#       ['aaa', 'aaa', 'aaa', 'aaa'],
#       ['aaa', 'aaa', 'aaa', 'aaa']], dtype=object)

请向我们展示您的尝试。如果需要,请安装
pip install pandas
a = np.loadtxt('a.txt', dtype=object)
b = np.loadtxt('b.txt', dtype=object)
print('('+a+'+'+b+')')
#array([['(a+b)', '(a+b)', '(a+b)', '(a+b)'],
#       ['(a+b)', '(a+b)', '(a+b)', '(a+b)'],
#       ['(a+b)', '(a+b)', '(a+b)', '(a+b)']], dtype=object)

print(a+b)
#array([['ab', 'ab', 'ab', 'ab'],
#       ['ab', 'ab', 'ab', 'ab'],
#       ['ab', 'ab', 'ab', 'ab']], dtype=object)

 print(3*a)
#array([['aaa', 'aaa', 'aaa', 'aaa'],
#       ['aaa', 'aaa', 'aaa', 'aaa'],
#       ['aaa', 'aaa', 'aaa', 'aaa']], dtype=object)