shape函数(需要导入numpy)
shape函数是numpy.core.fromnumeric中的函数,它的功能是读取矩阵的长度,比如shape[0]就是读取矩阵第一维度的长度。它的输入参数可以使一个整数表示维度,也可以是一个矩阵。
-
一维矩阵[1]返回值为(1L,)
-
二维矩阵,返回两个值
-
一个单独的数字,返回值为空
-
或者
- #一维列表
- L=range(5)
- shape(L)
- #二维列表
- L=[[1,2,3],[4,5,6]]
- shape(L)
-
reshape:函数功能:给予数组一个新的形状,而不改变它的数据
-
newshape:整数值或整数元组。新的形状应该兼容于原始形状。如果是一个整数值,表示一个一维数组的长度;如果是元组,一个元素值可以为-1,此时该元素值表示为指定,此时会从数组的长度和剩余的维度中推断出
order:可选(忽略)
-
>>> a = np.array([1, 2, 3, 4]);b = np.array((5, 6, 7, 8));c = np.array([[1, 2, 3, 4],[4, 5, 6, 7], [7, 8, 9, 10]])
>>> b
array([5, 6, 7, 8])
>>> c
array([[ 1, 2, 3, 4],
[ 4, 5, 6, 7],
[ 7, 8, 9, 10]])
>>> c.dtype
dtype('int32')
>>> d = a.reshape((2,2))
>>> d
array([[1, 2],
[3, 4]])
>>> d = a.reshape((1,2))
Traceback (most recent call last):
File "<pyshell#27>", line 1, in <module>
d = a.reshape((1,2))
ValueError: total size of new array must be unchanged
>>> d = a.reshape((1,-1))
>>> d
array([[1, 2, 3, 4]])
>>> d = a.reshape((-1,1))
>>> d
array([[1],
[2],
[3],
[4]])
-