numpy.ndarray.flatten()函數(shù)的具體使用
該函數(shù)主要用來(lái)快速扁平化數(shù)組,請(qǐng)看如下代碼:
import numpy as np
class Debug:
? ? def __init__(self):
? ? ? ? self.array1 = np.array([[1, 2], [3, 4]])
? ? ? ? self.array2 = np.ones((2, 2, 2))
? ? def mainProgram(self):
? ? ? ? print("The value of array1 is: ")
? ? ? ? print(self.array1)
? ? ? ? print("The value of flattened array is: ")
? ? ? ? array2 = self.array1.flatten()
? ? ? ? print(array2)
? ? ? ? print("The value of array2 is: ")
? ? ? ? print(self.array2)
? ? ? ? print("The value of flattened array is: ")
? ? ? ? print(self.array2.flatten())
if __name__ == '__main__':
? ? main = Debug()
? ? main.mainProgram()
"""
The value of array1 is:?
[[1 2]
?[3 4]]
The value of flattened array is:?
[1 2 3 4]
The value of array2 is:?
[[[1. 1.]
? [1. 1.]]
?[[1. 1.]
? [1. 1.]]]
The value of flattened array is:?
[1. 1. 1. 1. 1. 1. 1. 1.]
"""我們可以到,使用數(shù)組調(diào)用flatten()可以快速地將二維或者三維數(shù)組快速地扁平化。
numpy.ravel() 和 numpy.flatten()
首先聲明兩者所要實(shí)現(xiàn)的功能是一致的(將多維數(shù)組降位一維),兩者的區(qū)別在于返回拷貝(copy)還是返回視圖(view),numpy.flatten()返回一份拷貝,對(duì)拷貝所做的修改不會(huì)影響(reflects)原始矩陣,而numpy.ravel()返回的是視圖,會(huì)影響(reflects)原始矩陣。
1. 兩者的功能
>>> x = np.array([[1, 2], [3, 4]])
>>> x
array([[1, 2],
[3, 4]])
>>> x.flatten()
array([1, 2, 3, 4])
>>> x.ravel()
array([1, 2, 3, 4])
# 兩者默認(rèn)均是行序優(yōu)先
>>> x.flatten('F')
array([1, 3, 2, 4])
>>> x.ravel('F')
array([1, 3, 2, 4])
>>> x.reshape(-1)
array([1, 2, 3, 4])
>>> x.T.reshape(-1)
array([1, 3, 2, 4])2. 兩者的區(qū)別
>>> x = np.array([[1, 2], [3, 4]])
>>> x.flatten()[1] = 100 # flatten:返回的是拷貝
>>> x
array([[1, 2],
[3, 4]])
>>> x.ravel()[1] = 100
>>> x
array([[ 1, 100],
[ 3, 4]])
到此這篇關(guān)于numpy.ndarray.flatten()函數(shù)的具體使用的文章就介紹到這了,更多相關(guān)numpy flatten內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python實(shí)現(xiàn)批量提取Word文檔表格數(shù)據(jù)
在大數(shù)據(jù)處理與信息抽取領(lǐng)域中,Word文檔是各類機(jī)構(gòu)和個(gè)人普遍采用的一種信息存儲(chǔ)格式,本文將介紹如何使用Python實(shí)現(xiàn)對(duì)Word文檔中表格的提取,感興趣的可以了解下2024-03-03
pycharm中報(bào)ModuleNotFoundError:No?module?named?'tensor
這篇文章主要給大家介紹了關(guān)于pycharm中報(bào)ModuleNotFoundError:No?module?named?'tensorflow'錯(cuò)誤的解決方法,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下2023-07-07
python高并發(fā)異步服務(wù)器核心庫(kù)forkcore使用方法
這篇文章主要介紹了python高并發(fā)異步服務(wù)器核心庫(kù)forkcore的使用方法,大家參考使用吧2013-11-11
使用Playwright進(jìn)行視覺(jué)回歸測(cè)試詳解
這篇文章主要介紹了使用Playwright進(jìn)行視覺(jué)回歸測(cè)試詳解,視覺(jué)回歸測(cè)試是一種軟件測(cè)試技術(shù),專注于檢測(cè)Web應(yīng)用程序或網(wǎng)站的用戶界面中的視覺(jué)變化和差異,需要的朋友可以參考下2023-08-08
Python ORM框架SQLAlchemy學(xué)習(xí)筆記之映射類使用實(shí)例和Session會(huì)話介紹
這篇文章主要介紹了Python ORM框架SQLAlchemy學(xué)習(xí)筆記之映射類使用實(shí)例和Session會(huì)話介紹,需要的朋友可以參考下2014-06-06
Python實(shí)現(xiàn)的簡(jiǎn)單讀寫(xiě)csv文件操作示例
這篇文章主要介紹了Python實(shí)現(xiàn)的簡(jiǎn)單讀寫(xiě)csv文件操作,結(jié)合實(shí)例形式分析了Python使用csv模塊針對(duì)csv文件進(jìn)行讀寫(xiě)操作的相關(guān)實(shí)現(xiàn)技巧與注意事項(xiàng),需要的朋友可以參考下2018-07-07
Caffe卷積神經(jīng)網(wǎng)絡(luò)solver及其配置詳解
這篇文章主要為大家介紹了Caffe卷積神經(jīng)網(wǎng)絡(luò)solver及其配置詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06

