“数组基本操作:拼接,分裂,变形”的版本间的差异
来自CloudWiki
Xiaolongyang(讨论 | 贡献) (创建页面,内容为“== 变形== === 1.最灵活的实现方法是通过reshape()函数实现。例如:如果希望将数字1~9放入一个3*3的矩阵,可以采用如下方法:===…”) |
Xiaolongyang(讨论 | 贡献) (→分裂) |
||
第10行: | 第10行: | ||
== 分裂 == | == 分裂 == | ||
+ | ===第一种方法,按照数组的节点进行分裂,split函数当中的中括号表示分裂节点的位置:=== | ||
+ | >>> x=np.array([1,2,3,4,5,56,6])<br> | ||
+ | >>> x1,x2,x3=np.split(x,[2,4])<br> | ||
+ | >>> x1<br> | ||
+ | array([1, 2])<br> | ||
+ | >>> x2<br> | ||
+ | array([3, 4])<br> | ||
+ | >>> x3<br> | ||
+ | array([ 5, 56, 6])<br> | ||
+ | |||
+ | ===第二种方法:然后数组的分裂也具备了前缀为v或者h的函数,首先建立二维gird数组,利用如下:=== | ||
+ | >>> grid<br> | ||
+ | array([[ 0, 1, 2, 3],<br> | ||
+ | [ 4, 5, 6, 7],<br> | ||
+ | [ 8, 9, 10, 11],<br> | ||
+ | [12, 13, 14, 15]])<br> | ||
+ | 利用vsplit进行分裂:<br> | ||
+ | >>> x1,x2=np.vsplit(gird,[2])<br> | ||
+ | >>> x1<br> | ||
+ | array([[0, 1, 2, 3],<br> | ||
+ | [4, 5, 6, 7]])<br> | ||
+ | >>> x2<br> | ||
+ | array([[ 8, 9, 10, 11],<br> | ||
+ | [12, 13, 14, 15]])<br> |
2020年5月17日 (日) 12:23的版本
目录
变形
1.最灵活的实现方法是通过reshape()函数实现。例如:如果希望将数字1~9放入一个3*3的矩阵,可以采用如下方法:
grid = np.arange(1,10).reshape((3,3))
拼接
np.concatenate(array_list, axis=0/1):沿着指定axis进行数组的合并
a = np.arange(12).reshape(3,4)
b = np.random.randint(10,20,size=(3,2))
np.concatenate([a,b], axis=1)
分裂
第一种方法,按照数组的节点进行分裂,split函数当中的中括号表示分裂节点的位置:
>>> x=np.array([1,2,3,4,5,56,6])
>>> x1,x2,x3=np.split(x,[2,4])
>>> x1
array([1, 2])
>>> x2
array([3, 4])
>>> x3
array([ 5, 56, 6])
第二种方法:然后数组的分裂也具备了前缀为v或者h的函数,首先建立二维gird数组,利用如下:
>>> grid
array([[ 0, 1, 2, 3],
[ 4, 5, 6, 7],
[ 8, 9, 10, 11],
[12, 13, 14, 15]])
利用vsplit进行分裂:
>>> x1,x2=np.vsplit(gird,[2])
>>> x1
array([[0, 1, 2, 3],
[4, 5, 6, 7]])
>>> x2
array([[ 8, 9, 10, 11],
[12, 13, 14, 15]])