np.hstack()和np.dstack()的使用
提到numpy數(shù)組就不得不說到np.hstack()與np.dstack()的問題。這里我們研究一下它們的使用方法。
我們先來看 一下np.hstack()函數(shù),代碼如下:
# -*- coding: utf-8 -*-
import numpy as np
class Debug:
? ? def __init__(self):
? ? ? ? self.x = np.array([1, 2, 3])
? ? ? ? self.y = np.array([4, 5, 6])
? ? ? ? self.x1 = np.array([[1],[2],[3]])
? ? ? ? self.y1 = np.array([[4],[5],[6]])
? ? ? ??
? ? def mainProgram(self):
? ? ? ? z = np.hstack((self.x, self.y))
? ? ? ? z1 = np.hstack((self.x1, self.y1))
? ? ? ? print("The value of z is: ")
? ? ? ? print(z)
? ? ? ? print("The value of z1 is: ")
? ? ? ? print(z1)
? ? ? ??
if __name__ == "__main__":
? ? main = Debug()
? ? main.mainProgram()
"""
The value of z is:?
[1 2 3 4 5 6]
The value of z1 is:?
[[1 4]
?[2 5]
?[3 6]]
"""我們可以看到np.hstack()會(huì)將numpy數(shù)組沿著橫向堆疊,我們也可以說是沿著x軸方向堆疊。其實(shí)np.hstack()函數(shù)中的h就是horizontal的意思,意思為橫向,而stack就是堆疊的意思。
我們?cè)賮砜匆幌耼p.vstack(),代碼如下:
# -*- coding: utf-8 -*-
import numpy as np
class Debug:
? ? def __init__(self):
? ? ? ? self.x = np.array([1, 2, 3])
? ? ? ? self.y = np.array([4, 5, 6])
? ? ? ? self.x1 = np.array([[1],[2],[3]])
? ? ? ? self.y1 = np.array([[4],[5],[6]])
? ? ? ??
? ? def mainProgram(self):
? ? ? ? z = np.vstack((self.x, self.y))
? ? ? ? z1 = np.vstack((self.x1, self.y1))
? ? ? ? print("The value of z is: ")
? ? ? ? print(z)
? ? ? ? print("The value of z1 is: ")
? ? ? ? print(z1)
? ? ? ??
if __name__ == "__main__":
? ? main = Debug()
? ? main.mainProgram()
"""
The value of z is:?
[[1 2 3]
?[4 5 6]]
The value of z1 is:?
[[1]
?[2]
?[3]
?[4]
?[5]
?[6]]
"""我們可以看到np.vstack()會(huì)將numpy數(shù)組沿著縱向堆疊,我們也可以說是沿著y軸方向堆疊。其實(shí)np.vstack()函數(shù)中的v就是vertical的意思,意思為垂直方向,即縱向,同理stack是堆疊的意思, 所以整體表示沿著縱向堆疊。
綜上所述,np.hstack()表示沿著橫向堆疊,np.vstack()表示沿著縱向堆疊,需要注意它們的參數(shù)應(yīng)該為一個(gè)元組,將需要堆疊的數(shù)組先組成一個(gè)元組再傳遞進(jìn)入即可。當(dāng)然,這里只是對(duì)兩個(gè)numpy數(shù)組進(jìn)行堆疊操作,多個(gè)數(shù)組也是可以,將他們放在一起組成一個(gè)共同的元組即可,代碼如下:
# -*- coding: utf-8 -*-
import numpy as np
class Debug:
? ? def __init__(self):
? ? ? ? self.x = np.array([1, 2, 3])
? ? ? ? self.y = np.array([4, 5, 6])
? ? ? ? self.z = np.array([7, 8, 9])
? ? ? ??
? ? def mainProgram(self):
? ? ? ? z = np.vstack((self.x, self.y, self.z))
? ? ? ? print("The value of z is: ")
? ? ? ? print(z)
? ? ? ??
if __name__ == "__main__":
? ? main = Debug()
? ? main.mainProgram()
"""
The value of z is:?
The value of z is:?
[[1 2 3]
?[4 5 6]
?[7 8 9]]
"""至此,我們對(duì)np.hstack()與np.vstack()函數(shù)的探索就結(jié)束了。更多相關(guān)np.hstack()和np.dstack()內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
使用python-opencv讀取視頻,計(jì)算視頻總幀數(shù)及FPS的實(shí)現(xiàn)
今天小編就為大家分享一篇使用python-opencv讀取視頻,計(jì)算視頻總幀數(shù)及FPS的實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-12-12
Python3中configparser模塊讀寫ini文件并解析配置的用法詳解
這篇文章主要介紹了Python3中configparser模塊讀寫ini文件并解析配置的用法詳解,需要的朋友可以參考下2020-02-02
Python實(shí)現(xiàn)圖像的二進(jìn)制與base64互轉(zhuǎn)
這篇文章主要為大家介紹了如何在Python中使用OpenCV從而實(shí)現(xiàn)圖像轉(zhuǎn)base64編碼、圖像轉(zhuǎn)二進(jìn)制編碼、二進(jìn)制轉(zhuǎn)圖像等功能,感興趣的可以跟上小編一起學(xué)習(xí)一下2022-03-03
Python辦公自動(dòng)化Word轉(zhuǎn)Excel文件批量處理
這篇文章主要為大家介紹了Python辦公自動(dòng)化Word轉(zhuǎn)Excel文件批量處理示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06

