python - 将两个列表按元素连接成一个 n x n 矩阵

标签 python arrays numpy matrix elementwise-operations

我有两个带有字符串的列表,我想将它们按元素连接成一个 n x n 矩阵。我已经尝试了下面的代码,但这只给了我 n x 1 列表。

row = ['a','b','c']
col = ['a','b','c']

matrix = map(''.join, zip(row,col))

预期的输出将是这样的矩阵:

[['aa','ab','ac'],
 ['ba','bb','bc'],
 ['ca','cb','cc']])

是否有使用常规 python 或 numpy 来完成此任务的解决方案?

最佳答案

常规 Python - 使用字符串连接和列表理解:

matrix = [[x + y for x in row] for y in col]

为了符合 NumPy 样式和所需的输出使用:

np.c_[matrix].T

关于python - 将两个列表按元素连接成一个 n x n 矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59348226/

相关文章:

c# - 为什么数组初始化总是求助于int?

python - 用于屏蔽每列单个切片的矢量化方法

python - 在 numpy 中计算对角线和

python - 如何使用 pandas 系列对 if 条件进行矢量化?

python - 使用 nautilus 脚本转义路径中的空格

python - 解析具有正确名称的空格分隔行

arrays - MongoDB:将嵌套数组中的值分组以获取计数

c# - 我如何更改此代码以使其停止循环但显示相同的内容?

python - Google App Engine 中的管理员

python - 断言由 @propertyname.setter 生成的异常