有没有一种简单的方法可以从 python 中的两个不相等数组构造 n x n 数组?



我有两个数组

X_1 = [[1, 1, 1, 1, 1, 1, 1, 2, 2, 1, 3, 1, 1, 1, 3, 1, 1, 1, 2, 1, 1],
[ 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, 2, 3, 2, 2, 2, 2, 2, 2],
[0, 3, 3, 2, 3, 0, 0, 2, 1, 3, 2, 3, 3, 0, 2, 2, 0, 1, 0, 3, 3, 0, 2],
[3, 0, 3, 3, 1, 2, 3, 3, 0, 3, 2, 3, 2, 3, 3, 3, 1, 3, 3, 3, 3, 1, 2, 0]]
X_2 = [0,1,2,3]

我想派生一个 4 x 4 B 数组,这样每个B[i,j]元素都是X_2[i]值的总数X_1[j]

输出:

B = [[0,16,3,2],
[0,0,21,2],
[7,2,6,7],
[3,3,4,14]]

你可以尝试嵌套循环,比如

B = []
for i in X_1:
counts = []
for y in X_2:
counts.append(i.count(y))
B.append(counts)
print(B)

输出

[[0, 16, 3, 2], [0, 0, 21, 2], [7, 2, 6, 8], [3, 3, 4, 14]]

最新更新