import numpy as np arr=np.arange(16) new_arr=arr.reshape(4,4) new_arr
Out[1]:
array([[ 0, 1, 2, 3],
[ 4, 5, 6, 7],
[ 8, 9, 10, 11],
[12, 13, 14, 15]])
In [3]:
#T转置 new_arr.T
Out[3]:
array([[ 0, 4, 8, 12],
[ 1, 5, 9, 13],
[ 2, 6, 10, 14],
[ 3, 7, 11, 15]])
In [5]:
new_arr=new_arr.reshape(2,2,4)
In [15]:
new_arr
Out[15]:
array([[[ 0, 1, 2, 3],
[ 4, 5, 6, 7]],
[[ 8, 9, 10, 11],
[12, 13, 14, 15]]])
In [14]:
new_arr.shape
Out[14]:
(2, 2, 4)
In [9]:
#transpose new_arr.transpose()
Out[9]:
array([[[ 0, 8],
[ 4, 12]],
[[ 1, 9],
[ 5, 13]],
[[ 2, 10],
[ 6, 14]],
[[ 3, 11],
[ 7, 15]]])
In [13]:
new_arr.transpose().shape
Out[13]:
(4, 2, 2)
In [22]:
new_arr.transpose(2,1,0)
Out[22]:
array([[[ 0, 8],
[ 4, 12]],
[[ 1, 9],
[ 5, 13]],
[[ 2, 10],
[ 6, 14]],
[[ 3, 11],
[ 7, 15]]])
In [26]:
new_arr.swapaxes(1,2).shape
Out[26]:
(2, 4, 2)
In [28]:
#2.8数据处理 #条件逻辑转为数组运算 arr_x=np.array([1,5,6]) arr_y=np.array([8,2,1]) arr_con=np.array([True,False,True]) result=np.where(arr_con,arr_x,arr_y) result
Out[28]:
array([1, 2, 6])
In [29]:
np.where(arr_x>2,1,0)
Out[29]:
array([0, 1, 1])
In [31]:
#求和 np.sum(arr_y)
Out[31]:
11
In [32]:
np.min(arr_y)
Out[32]:
1
In [34]:
#累计乘法 np.cumprod(arr_x)
Out[34]:
array([ 1, 5, 30], dtype=int32)
In [35]:
#累计加法 np.cumsum(arr_y)
Out[35]:
array([ 8, 10, 11], dtype=int32)
In [40]:
#可以指定轴 new_arr #new_arr.sum(axis=1)
Out[40]:
array([[[ 0, 1, 2, 3],
[ 4, 5, 6, 7]],
[[ 8, 9, 10, 11],
[12, 13, 14, 15]]])
In [44]:
new_arr.sum(axis=2)
Out[44]:
array([[ 6, 22],
[38, 54]])
In [63]:
#排序 arr_sort=np.array([[3,4,5,1],[2,6,1,9]]) #arr_sort.sort() arr_sort.sort(axis=0) arr_sort
Out[63]:
array([[2, 4, 1, 1],
[3, 6, 5, 9]])
In [67]:
#all any np.any(arr_sort>2) # np.all(arr_sort>2) #去重 np.unique(arr_sort) #inld np.in1d(arr_sort,[1,9])
Out[67]:
array([False, False, True, True, False, False, False, True], dtype=bool)
In [ ]:

本文介绍了如何使用numpy进行数组重塑(new_arr.reshape())、转置(new_arr.T)和多维转换(new_arr.transpose()),并展示了条件逻辑运算和数据处理技巧,如where函数和数组统计。同时涵盖了排序、聚合和维度调整等关键操作。
622

被折叠的 条评论
为什么被折叠?



