欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Numpy中扁平化函數(shù)ravel()和flatten()的區(qū)別詳解

 更新時間:2023年02月20日 14:51:28   作者:weller  
本文主要介紹了Numpy中扁平化函數(shù)ravel()和flatten()的區(qū)別詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

在Numpy中經(jīng)常使用到的操作由扁平化操作,Numpy提供了兩個函數(shù)進行此操作,他們的功能相同,但在內(nèi)存上有很大的不同.

先來看這兩個函數(shù)的使用:

from numpy import *

a = arange(12).reshape(3,4)
print(a)
# [[ 0 ?1 ?2 ?3]
# ?[ 4 ?5 ?6 ?7]
# ?[ 8 ?9 10 11]]
print(a.ravel())
# [ 0 ?1 ?2 ?3 ?4 ?5 ?6 ?7 ?8 ?9 10 11]
print(a.flatten())
# [ 0 ?1 ?2 ?3 ?4 ?5 ?6 ?7 ?8 ?9 10 11]

可以看到這兩個函數(shù)實現(xiàn)的功能一樣,但我們在平時使用的時候flatten()更為合適.在使用過程中flatten()分配了新的內(nèi)存,但ravel()返回的是一個數(shù)組的視圖.視圖是數(shù)組的引用(說引用不太恰當,因為原數(shù)組和ravel()返回后的數(shù)組的地址并不一樣),在使用過程中應該注意避免在修改視圖時影響原本的數(shù)組.這是什么意思咧,我們通過代碼來具體解釋:

from numpy import *

a = arange(12).reshape(3,4)
print(a)
# [[ 0 ?1 ?2 ?3]
# ?[ 4 ?5 ?6 ?7]
# ?[ 8 ?9 10 11]]

# 創(chuàng)建一個和a相同內(nèi)容的數(shù)組b
b = a.copy()
c = a.ravel()
d = b.flatten()
# 輸出c和d數(shù)組
print(c)
# [ 0 ?1 ?2 ?3 ?4 ?5 ?6 ?7 ?8 ?9 10 11]
print(d)
# [ 0 ?1 ?2 ?3 ?4 ?5 ?6 ?7 ?8 ?9 10 11]
# 可以看到c和d數(shù)組都是扁平化后的數(shù)組,具有相同的內(nèi)容

print(a is c)
# False
print(b is d)
# False
# 可以看到以上a,b,c,d是四個不同的對象

# 但因為c是a的一種展示方式,雖然他們是不同的對象,但在修改c的時候,a中相應的數(shù)也改變了
c[1] = 99
d[1] = 99
print(a)
# [[ 0 99 ?2 ?3]
# ?[ 4 ?5 ?6 ?7]
# ?[ 8 ?9 10 11]]
print(b)
# [[ 0 ?1 ?2 ?3]
# ?[ 4 ?5 ?6 ?7]
# ?[ 8 ?9 10 11]]
print(c)
# [ 0 99 ?2 ?3 ?4 ?5 ?6 ?7 ?8 ?9 10 11]
print(d)
# [ 0 99 ?2 ?3 ?4 ?5 ?6 ?7 ?8 ?9 10 11]

通過以上的分析,在實際應用中應盡量使用flatten()函數(shù),這樣避免意外的錯誤.

到此這篇關(guān)于Numpy中扁平化函數(shù)ravel()和flatten()的區(qū)別詳解的文章就介紹到這了,更多相關(guān)Numpy ravel()和flatten()內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • pytorch如何實現(xiàn)邏輯回歸

    pytorch如何實現(xiàn)邏輯回歸

    這篇文章主要介紹了pytorch如何實現(xiàn)邏輯回歸問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • NumPy實現(xiàn)結(jié)構(gòu)化數(shù)組的示例代碼

    NumPy實現(xiàn)結(jié)構(gòu)化數(shù)組的示例代碼

    結(jié)構(gòu)化數(shù)組是 NumPy 中用于處理異質(zhì)數(shù)據(jù)的重要工具,通過定義復雜的數(shù)據(jù)類型,我們可以創(chuàng)建具有不同字段的數(shù)組,本文主要介紹了NumPy實現(xiàn)結(jié)構(gòu)化數(shù)組的示例代碼,具有一定的參考價值,感興趣的可以了解一下
    2024-01-01
  • Python3自動簽到 定時任務(wù) 判斷節(jié)假日的實例

    Python3自動簽到 定時任務(wù) 判斷節(jié)假日的實例

    今天小編就為大家分享一篇Python3自動簽到 定時任務(wù) 判斷節(jié)假日的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-11-11
  • 推薦值得學習的12款python-web開發(fā)框架

    推薦值得學習的12款python-web開發(fā)框架

    這篇文章主要介紹了值得學習的12款python-web開發(fā)框架,幫助大家更好的理解和學習Python web開發(fā),感興趣的朋友可以了解下
    2020-08-08
  • Python進程池Pool應用實例分析

    Python進程池Pool應用實例分析

    這篇文章主要介紹了Python進程池Pool應用,結(jié)合實例形式分析了Python進程池Pool功能、使用方法及相關(guān)操作注意事項,需要的朋友可以參考下
    2019-11-11
  • python鏈接oracle數(shù)據(jù)庫以及數(shù)據(jù)庫的增刪改查實例

    python鏈接oracle數(shù)據(jù)庫以及數(shù)據(jù)庫的增刪改查實例

    下面小編就為大家分享一篇python鏈接oracle數(shù)據(jù)庫以及數(shù)據(jù)庫的增刪改查實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01
  • plotly分割顯示mnist的方法詳解

    plotly分割顯示mnist的方法詳解

    這篇文章主要為大家詳細介紹了plotly分割顯示mnist的方法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-03-03
  • Python Requests.post()請求失敗時的retry設(shè)置方式

    Python Requests.post()請求失敗時的retry設(shè)置方式

    這篇文章主要介紹了Python Requests.post()請求失敗時的retry設(shè)置方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • 深入理解NumPy簡明教程---數(shù)組3(組合)

    深入理解NumPy簡明教程---數(shù)組3(組合)

    本篇文章對NumPy數(shù)組進行較深入的探討。首先介紹自定義類型的數(shù)組,接著數(shù)組的組合,最后介紹數(shù)組復制方面的問題,有興趣的可以了解一下。
    2016-12-12
  • 解決ModuleNotFoundError: No module named ‘flask._compat的問題

    解決ModuleNotFoundError: No module named ‘

    這篇文章主要介紹了解決ModuleNotFoundError: No module named ‘flask._compat的問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06

最新評論