Jav*_*aaa 39 python numpy list matrix
我使用numpy中的dot()函数将3x3的矩阵与1x3的numpy.array相乘.输出例如是:
[[0.16666667 0.66666667 0.16666667]]
其类型:
<class 'numpy.matrixlib.defmatrix.matrix'>
Run Code Online (Sandbox Code Playgroud)
我该如何将其转换为列表.因为我知道结果将始终是1x3的矩阵所以它应该被转换为列表,因为我需要能够稍后循环它以计算其中两个列表的皮尔逊距离.
总结一下:如何从这个矩阵中制作一个列表?
Jos*_*del 44
可能不是最佳方式,但以下工作:
a = numpy.matrix([[ 0.16666667, 0.66666667, 0.16666667]])
list(numpy.array(a).reshape(-1,))
Run Code Online (Sandbox Code Playgroud)
要么
numpy.array(a).reshape(-1,).tolist()
Run Code Online (Sandbox Code Playgroud)
要么
numpy.array(a)[0].tolist()
Run Code Online (Sandbox Code Playgroud)
Sve*_*ach 15
如果a是你的矩阵,试试吧
a.ravel().tolist()
Run Code Online (Sandbox Code Playgroud)
但是你不需要把它变成一个列表来迭代它.
tit*_*ito 14
在矩阵对象上使用tolist()方法:
>>> import numpy
>>> m = numpy.matrix([1, 2, 3])
>>> type(m)
<class 'numpy.core.defmatrix.matrix'>
>>> m.tolist()
[[1, 2, 3]]
Run Code Online (Sandbox Code Playgroud)
Ale*_*dro 10
其他方式:
>>> import numpy as np
>>> m = np.matrix([1,2,3])
>>> np.array(m).flatten().tolist()
[1,2,3]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
57928 次 |
| 最近记录: |