python - numpy,合并两个不同形状的数组

标签 python numpy

对于两个数组 a 和 b,

a = np.array([[1],[2],[3],[4]])

b = np.array(['a', 'b', 'c', 'd'])

我想生成以下数组

c = np.array([[1, 'a'], [2, 'b'], [3, 'c'], [4, 'd']])

有没有办法有效地做到这一点?

最佳答案

您需要:

import numpy as np 

a = np.array([[1],[2],[3],[4]])

b = np.array(['a', 'b', 'c', 'd'])

print(np.array(list(zip(np.concatenate(a), b))))

输出:

[[1, 'a'], [2, 'b'], [3, 'c'], [4, 'd']] 

替代解决方案

print(np.stack((np.concatenate(a), b), axis=1))

关于python - numpy,合并两个不同形状的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55236524/

相关文章:

python - Docker 容器正在运行。但页面在本地主机 URL 中不起作用(页面未发送任何数据)

python - 无模式对话框 tkinter

python - 在python中渲染图像以在html中显示

python - numpy python 快速有效地将非零值提升到二维数组的顶部

python - pandas/numpy int64 中意外的 32 位整数溢出(python 3.6)

Python Pillow 降低图像质量不会改变文件大小

python - 如何在异常时以交互模式中断来调试 Python 脚本?

python - 如何根据 python 中提供的 0 和 1 矩阵生成矩阵组合?

python - Numpy 搜索子集中数组的元素

python - python 中的 Opencv 2.4.3 estimateRigidTransform