>>> #翻转数组
>>> import numpy as np
>>> a = np.arange(12).reshape(3,4)
>>> print('原数组')
原数组
>>> print(a)
[[ 0 1 2 3]
[ 4 5 6 7]
[ 8 9 10 11]]
>>> print('n')
>>> print('对换数组')
对换数组
>>> print(np.transpose(a))
[[ 0 4 8]
[ 1 5 9]
[ 2 6 10]
[ 3 7 11]]
>>> #不就是行变列列变长嘛
>>> #numpy.ndarray.t类似于numpy.transpose
>>> import numpy as np
>>> a = np.arange(12).reshape(3,4)
>>> print('原数组')
原数组
>>> print(a)
[[ 0 1 2 3]
[ 4 5 6 7]
[ 8 9 10 11]]
>>> print('n')
>>> print("转置数组:")
转置数组:
>>> print(a.T)
[[ 0 4 8]
[ 1 5 9]
[ 2 6 10]
[ 3 7 11]]
>>> #numpy.rollaxis
>>> #函数向后滚动特定的轴到一个特定位置格式如下
>>> import numpy as np
>>> a = np.arange(8).reshape(2,2,2)
>>> print('原数组')
原数组
>>> print(a)
[[[0 1]
[2 3]]
[[4 5]
[6 7]]]
>>> print('获取数组中一个值:')
获取数组中一个值:
>>> print(np.where(a==6))
(array([1], dtype=int64), array([1], dtype=int64), array([0], dtype=int64))
>>> print(a[1,1,0])
6
>>> print(a)
[[[0 1]
[2 3]]
[[4 5]
[6 7]]]
>>> print(a[1,1])
[6 7]
>>> print(a[0,1])
[2 3]
>>> print(a[1,0])
[4 5]
>>> print(a[0,0])
[0 1]
>>> print([1,1,1])
[1, 1, 1]
>>> print(a[1,1,1])
7
>>> print(a[1,1,0])
6
>>> print('n')
>>> #将轴2滚动到轴0
>>> print('调用rollaxis函数')
调用rollaxis函数
>>> b =np.rollaxis(a,2,0)
>>> print(b)
[[[0 2]
[4 6]]
[[1 3]
[5 7]]]
>>> print(a)
[[[0 1]
[2 3]]
[[4 5]
[6 7]]]
>>> print(a[1,1,0])
6
>>> print(b[1,1,0])
5
>>> print(b[0,1,1])
6
>>> print(np.where(b==6))
(array([0], dtype=int64), array([1], dtype=int64), array([1], dtype=int64))
>>> print('n')
>>> print('调用rollaxis函数')
调用rollaxis函数
>>> c = np.rollaxis(a,2,1)
>>> print(c)
[[[0 2]
[1 3]]
[[4 6]
[5 7]]]
>>> print(np.where(c==6))
(array([1], dtype=int64), array([0], dtype=int64), array([1], dtype=int64))
>>> print('nm')
m
>>>
>>>
>>> #numpy.swapaxes用于交换数组的两个轴
>>> import numpy as np
>>> a = np.arange(8).reshape(2,2,2)
>>> print('原数组')
原数组
>>> print(a)
[[[0 1]
[2 3]]
[[4 5]
[6 7]]]
>>> print('n')
>>> print('调用swapaxes函数后的数组')
调用swapaxes函数后的数组
>>> print(np.swapaxes(a,2,0))
[[[0 4]
[2 6]]
[[1 5]
[3 7]]]
>>> print(np.where(a==6))
(array([1], dtype=int64), array([1], dtype=int64), array([0], dtype=int64))
>>> print(a[1,1,0])
6
>>> #修改数组维度
>>> #numpy.broadcast
>>> #用于模仿广播的对象,它返回一个对象,该对象封装了一个将一个数组广播到另一个数组的结果
>>> import numpy as np
>>> x = np.array([[1],[2],[3]])
>>> y = np.array([4,5,6])
>>> print(x)
[[1]
[2]
[3]]
>>> print(y)
[4 5 6]
>>>
>>> b = np.broadcast(x,y)
>>> print('对y广播x:')
对y广播x:
>>> r,c=b.iters
>>> print(b)
>>> print(b.shape)
(3, 3)
>>> print(next(r),next(c))
1 4
>>> print(next(r),next(c))
1 5
>>> print('n')
>>> print('广播对象的形状')
广播对象的形状
>>> print(b.shape)
(3, 3)
>>> import numpy as np
>>> a = np.arange(4).reshape(1,4)
>>> print('原数组:')
原数组:
>>> print(a)
[[0 1 2 3]]
>>> print('n')
>>> print('调用brodcast_to函数之后')
调用brodcast_to函数之后
>>> print(np.broadcast_to(a,(4,4)))
[[0 1 2 3]
[0 1 2 3]
[0 1 2 3]
[0 1 2 3]]
>>> #numpy.expand_diums
>>> #numpy.expand_dims
>>> #函数用过在指定位置插入新的轴来扩展数组形状,函数格式如下
>>> import numpy as np
>>> x = np.array(([1,2],[3,4]))
>>> print('数组x:')
数组x:
>>> print(x)
[[1 2]
[3 4]]
>>> print('n')
>>> y = np.expand_dims(x,axis = 0)
>>> print('数组y')
数组y
>>> print(y)
[[[1 2]
[3 4]]]
>>> print('n')
>>> print('数组x和y的形状')
数组x和y的形状
>>> print(x.shape,y.shape)
(2, 2) (1, 2, 2)
>>> print('n')
>>> y = np.expand_dims(x,axis = 1)
>>> print(x.shape,y.shape)
(2, 2) (2, 1, 2)



