如何在 python 中找到 numpy 矩阵的长度(或尺寸、大小)? [复制]
Posted
技术标签:
【中文标题】如何在 python 中找到 numpy 矩阵的长度(或尺寸、大小)? [复制]【英文标题】:How do I find the length (or dimensions, size) of a numpy matrix in python? [duplicate] 【发布时间】:2013-01-28 15:20:39 【问题描述】:对于python中的numpy矩阵
from numpy import matrix
A = matrix([[1,2],[3,4]])
我怎样才能找到这个矩阵的行(或列)的长度?等效地,我如何知道行数或列数?
到目前为止,我找到的唯一解决方案是:
len(A)
len(A[:,1])
len(A[1,:])
分别返回 2、2 和 1。从这里我收集到len()
将返回行数,所以我总是可以使用转置len(A.T)
来获取列数。但是,这让人感到不满意和随意,因为在阅读len(A)
行时,这应该返回行数并不是很明显。它实际上与 len([1,2])
对 2D python 数组的工作方式不同,因为这将返回 2。
那么,有没有更直观的方法来查找矩阵的大小,或者这是我拥有的最好的方法?
【问题讨论】:
numpy 维度的第一个结果顺便说一句,试试搜索框... 感谢您指出这个问题!我确实尝试过搜索,但“numpy 矩阵尺寸”(或就此而言的长度或大小)并没有产生任何有用的结果。我阅读了 numpy 教程,但形状已在 ndarray 部分中介绍,并且我没有将 ndarray 的属性扩展到矩阵的联系。我试图通过切换到 numpy 数组来解决我的问题,但是这些数组没有矩阵的线性代数属性,这进一步加深了我的信念,即它们不共享属性 【参考方案1】:shape
是 numpy ndarray 和矩阵的属性。
A.shape
将返回一个元组 (m, n),其中 m 是行数,n 是列数。
事实上,numpy matrix
对象是建立在 ndarray
对象之上的,ndarray
对象是 numpy 的两个基本对象之一(以及一个通用函数对象),因此它继承自 ndarray
【讨论】:
【参考方案2】:matrix.size
根据the numpy docs 返回Number of elements in the array.
希望有所帮助。
【讨论】:
谢谢,但我正在寻找行数或列数,而不是元素总数 快速说明:matrix.size 是一个 'int' 对象,不能调用!以上是关于如何在 python 中找到 numpy 矩阵的长度(或尺寸、大小)? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
如何在 14x14 numpy 矩阵中找到 10 个最高数字的索引? [复制]