numpy基础——数组的组合与分割
生活随笔
收集整理的這篇文章主要介紹了
numpy基础——数组的组合与分割
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
常用組合函數(shù)分類
數(shù)組的組合有常用的函數(shù),下面分一下類。
水平組合:hstack、column_stack
垂直組合:vstack、row_stack
水平\垂直組合:concatenate
深度組合:dstack
?
什么是水平組合?
?a ''' array([[0, 1, 2],[3, 4, 5],[6, 7, 8]]) ''' b ''' array([[ 0, 2, 4],[ 6, 8, 10],[12, 14, 16]]) ''' hstack((a,b))''' array([[ 0, 1, 2, 0, 2, 4],[ 3, 4, 5, 6, 8, 10],[ 6, 7, 8, 12, 14, 16]]) '''?水平組合就是將兩個數(shù)組在水平方向上拼接成一個數(shù)組
什么是垂直組合?
依水平組合來推。
什么是深度組合?
舉一個例子:
? ?a ''' array([[0, 1, 2],[3, 4, 5],[6, 7, 8]]) ''' b ''' array([[ 0, 2, 4],[ 6, 8, 10],[12, 14, 16]]) ''' hstack((a,b))''' array([[[ 0, 0],[ 1, 2],[ 2, 4]],[[ 3, 6],[ 4, 8],[ 5, 10]],[[ 6, 12],[ 7, 14],[ 8, 16]]]) '''??函數(shù)間的等式關(guān)系
concatenate((a,b) , axis=1)? => hstack((a,b)) => column_stack((a,b)) concatenate((a,b) , axis=0) => vstack((a,b)) => row_stack((a,b))?
分割常用函數(shù)分類
水平分割:hsplit
垂直分割:vsplit
深度分割:dsplit
?
什么是水平分割
就是在水平方向上分割,
a = arange(9).reshape(3,3) #實現(xiàn)將a在水平方向上,分割成三個相同大小的數(shù)組 hsplit(a,3) ''' [array([[0],[3],[6]]), array([[1],[4],[7]]), array([[2],[5],[8]])] '''什么是垂直分割
就是在豎直方向上分割
vsplit(a,3) #實現(xiàn)將a在豎直方向上分割成大小相同的三個數(shù)組 '''[array([[0, 1, 2]]), array([[3, 4, 5]]), array([[6, 7, 8]])] '''什么是深度分割
就是在深度方向上分割
t = arange(24).reshape((2,3,4)) ''' t: array([[[ 0, 1, 2, 3],[ 4, 5, 6, 7],[ 8, 9, 10, 11]],[[12, 13, 14, 15],[16, 17, 18, 19],[20, 21, 22, 23]]]) ''' dsplit(t,2) #如果要進行深度分割,數(shù)組的維度必須是3維以及3維以上 ''' [array([[[ 0, 1],[ 4, 5],[ 8, 9]],[[12, 13],[16, 17],[20, 21]]]), array([[[ 2, 3],[ 6, 7],[10, 11]],[[14, 15],[18, 19],[22, 23]]])] '''?
總結(jié)
以上是生活随笔為你收集整理的numpy基础——数组的组合与分割的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: numpy基础——对数组切片操作
- 下一篇: PyQt5初级——