如何在Python中找到矩阵的维度?

时间:2012-11-24 09:27:56

标签: python matrix

如何在Python中找到矩阵的维度。 Len(A)只返回一个变量。

编辑:

close = dataobj.get_data(timestamps, symbols, closefield)

是(我假设)生成整数矩阵(不太可能是字符串)。我需要找到该矩阵的大小,因此我可以运行一些测试而无需迭代所有元素。就数据类型而言,我假设它是一个数组(或列表列表)数组。

10 个答案:

答案 0 :(得分:21)

列表列表的行数为:len(A)和列数len(A[0]),假设所有行具有相同的列数,即每个索引中的所有列都属于相同的大小。

答案 1 :(得分:14)

如果您使用的是NumPy数组,则可以使用形状。 例如

  >>> a=array([[[1,2,3],[1,2,3]],[[12,3,4],[2,1,3]]])
  >>> a
  array([[[ 1,  2,  3],
         [ 1,  2,  3]],

         [[12,  3,  4],
         [ 2,  1,  3]]])
 >>> a.shape
 (2, 2, 3)

答案 2 :(得分:5)

正如Ayman farhat所说 你可以使用简单的方法len(矩阵)来获取行的长度,并获得第一行的长度来获得no。列使用len(matrix [0]):

>>> a=[[1,5,6,8],[1,2,5,9],[7,5,6,2]]
>>> len(a)
3
>>> len(a[0])
4

此外,您可以使用一个可以帮助您处理矩阵“numpy”的库:

>>> import numpy 
>>> numpy.shape(a)
(3,4)

答案 3 :(得分:3)

正确答案如下:

import numpy 
numpy.shape(a)

答案 4 :(得分:2)

要在NumPy中获取正确数量的尺寸:

len(a.shape)

在第一种情况下:

import numpy as np
a = np.array([[[1,2,3],[1,2,3]],[[12,3,4],[2,1,3]]])
print("shape = ",np.shape(a))
print("dimensions = ",len(a.shape))

输出将是:

shape =  (2, 2, 3)
dimensions =  3

答案 5 :(得分:2)

m = [[1, 1, 1, 0],[0, 5, 0, 1],[2, 1, 3, 10]]

print(len(m),len(m[0]))

输出

(3 4)

答案 6 :(得分:1)

假设您有一个which是一个数组。要获得数组的尺寸,应使用形状。

import numpy as np a = np.array([[3,20,99],[-13,4.5,26],[0,-1,20],[5,78,-19]])
a.shape

此输出将是 (4,3)

答案 7 :(得分:1)

您可以使用以下方法获取Numpy数组的高度和权重:

int height = arr.shape[0]
int weight = arr.shape[1]

如果数组具有多个维度,则可以增加索引来访问它们。

答案 8 :(得分:0)

您只需使用Numpy即可找到矩阵尺寸:

import numpy as np

x = np.arange(24).reshape((6, 4))
x.ndim

输出将是:

2

这意味着该矩阵是二维矩阵。

x.shape

将显示每个尺寸的大小。 x的形状等于:

(6, 4)

答案 9 :(得分:0)

我看待它的简单方式: 例子:

h=np.array([[[[1,2,3],[3,4,5]],[[5,6,7],[7,8,9]],[[9,10,11],[12,13,14]]]])

h.ndim 
4

h
array([[[[ 1,  2,  3],
         [ 3,  4,  5]],

        [[ 5,  6,  7],
         [ 7,  8,  9]],

        [[ 9, 10, 11],
         [12, 13, 14]]]])

如果你仔细观察,开头方括号的数量决定了数组的维数。 在上面访问 7 的数组中,使用了下面的索引, h[0,1,1,0]

但是,如果我们将数组更改为如下所示的 3 维,

h=np.array([[[1,2,3],[3,4,5]],[[5,6,7],[7,8,9]],[[9,10,11],[12,13,14]]])

h.ndim
3

h

array([[[ 1,  2,  3],
        [ 3,  4,  5]],

       [[ 5,  6,  7],
        [ 7,  8,  9]],

       [[ 9, 10, 11],
        [12, 13, 14]]])

访问上述数组中的第7个元素,索引为h[1,1,0]