我有两个不同的数组,我想将它们相互组合,以便新数组仍具有与旧数组相同的形状。
import numpy as np
x = (['1','2','3','4','5','6','7','8','9'])
y = (['a','b','c','d','e','f','g','h','i'])
z = np.array(zip(x,y))
print z
print np.shape(z)
让我明白
[['1' 'a']
['2' 'b']
['3' 'c']
['4' 'd']
['5' 'e']
['6' 'f']
['7' 'g']
['8' 'h']
['9' 'i']]
(9, 2)
我想要
[['1 a']
['2 b']
['3 c']
['4 d']
['5 e']
['6 f']
['7 g']
['8 h']
['9 i']]
(9,)
因为我需要新数组只有一维以进行进一步处理。 由于我是一名新手,我认为 zip() 函数可能不正确,但我也尝试了 .join() 函数,但我无法弄清楚这一点。
最佳答案
我认为你只需要在压缩后加入即可。尝试这个列表理解:
z = [" ".join(item) for item in zip(x, y)]
你是这个意思吗?
关于python - 如何在Python中压缩两个数组并保持原始形状?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35871252/