如何使用Python/NumPy将值转换为数组?

ars1skjm  于 2023-06-23  发布在  Python
关注(0)|答案(1)|浏览(143)

该练习包括使用NumPy在数组中组织0 - 5的值,这些值最初来自3x3矩阵。
示例:

[[1 1 3]
 [4 5 2]
 [3 0 0]]

这是我想要的输出:

[2,2,1,2,1,1]

我尝试使用np.array()和np.asarry(),但不起作用。此外,我想到使用flatten()函数,但它不符合我的目标。
我尝试的是:

import numpy as np

m = np.matrix([[1,1,3], [4,5,2], [3,0,0]]) # Primary matrix, used for obtaining the values
print("Original Matrix: ") # Print original matrix
print(m)

print("Occurrences: ")
for i in range(6):
  occur = (np.count_nonzero(m == i)) # Count the number of elements satisfying the condition
  print(i, ":", occur)

我的输出:

Occurrences:
0 : 2
1 : 2
2 : 1
3 : 2
4 : 1
5 : 1
p4tfgftt

p4tfgftt1#

我认为可以这样做:

# declare matrix:
mat = np.matrix([[1, 1, 3], 
 [4, 5, 2],
 [3, 0, 0]])

# get flattened array:
arr = mat.getA1()

# get the bincounts:
bc = np.bincount(arr)

这会给予你同样的结果

希望这有帮助!

相关问题