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

Numpy中的ravel_multi_index函數(shù)用法說明

 更新時間:2021年05月10日 14:10:01   作者:Laox1ao  
這篇文章主要介紹了Numpy中的ravel_multi_index函數(shù)用法說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

最近遇到了ravel_multi_index這個函數(shù),官方文檔看不明白,Google了一番好不容易才從一堆示例代碼里理解函數(shù)的意義,記錄一下。

官方文檔在這

這個函數(shù)主要功能為把給定的一個多維數(shù)組(函數(shù)的第一個參數(shù))看作索引數(shù)組,索引什么呢?去索引一個形狀為dims(函數(shù)的第二個參數(shù)),值為依次增大的自然數(shù)的數(shù)組中的值(可看做由list(range(N))的數(shù)組reshape(dims)而來),意義即為用一個唯一的一維數(shù)來定位(保存)原數(shù)組的二維(或多維(i,j,k,…))的數(shù)對的信息。

把文檔里的示例代碼貼一下來解釋:

>>> arr = np.array([[3,6,6],[4,5,1]])
>>> np.ravel_multi_index(arr, (7,6))
array([22, 41, 37])
>>> np.ravel_multi_index(arr, (7,6), order='F')
array([31, 41, 13])
>>> np.ravel_multi_index(arr, (4,6), mode='clip')
array([22, 23, 19])
>>> np.ravel_multi_index(arr, (4,4), mode=('clip','wrap'))
array([12, 13, 13])
>>> np.ravel_multi_index((3,1,4,1), (6,7,8,9))
1621

示例中arr即為要轉(zhuǎn)換的多維數(shù)組,把arr的內(nèi)容當(dāng)作索引,即[3,6,6]為橫坐標(biāo),[4,5,1]為縱坐標(biāo),去索引形狀為(7,6),內(nèi)容為從0開始,從左往右,從上往下依次增大的自然數(shù)的數(shù)組中的值。

例如第一個要索引的數(shù)[3,4]即為(7,6)數(shù)組中第4行,第5列的的值,即為3*6+4=22,即為結(jié)果中的第一個數(shù)。依次類推。

了解函數(shù)功能后,其他參數(shù)具體可見官方文檔說明。

補充:numpy.unravel_index 與 numpy.ravel_multi_index的理解

遇到numpy.ravel_multi_index 與numpy.unravel_index 這兩個函數(shù),查了網(wǎng)上的很多資料 都沒講的很清楚,記錄一下。

這兩個函數(shù)是相對應(yīng)的:

numpy.unravel_index(indices, shape, order='C')

其中indices是表示一個一維數(shù)組的index,將這個一維數(shù)組轉(zhuǎn)換成大小為shape([col, row])shape矩陣決定了轉(zhuǎn)變后得到的數(shù)組的行和列的大小,進(jìn)而得到index在新的二維矩陣 中的行index 和列index 其中order決定先是行index,還是先是列index 'C'先是列index 再是行index ‘F'先是行index 再是列index

 np.unravel_index([22, 41, 37], (7,6))
(array([3, 6, 6]), array([4, 5, 1]))

numpy.ravel_multi_index是numpy.unravel_index反過來的過程,

numpy.ravel_multi_index(multi_index, dims, mode='raise', order='C')

根據(jù)multi_index中不同數(shù)組代表的具體的索引,以及該數(shù)組的dims的大小 ,得到將該數(shù)組flat成一維數(shù)組 數(shù)據(jù)在一位數(shù)組中的位置。

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

相關(guān)文章

  • Python如何輸出異常信息(行號)

    Python如何輸出異常信息(行號)

    這篇文章主要介紹了Python如何輸出異常信息(行號)問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • Python+Django+MySQL實現(xiàn)基于Web版的增刪改查的示例代碼

    Python+Django+MySQL實現(xiàn)基于Web版的增刪改查的示例代碼

    這篇文章主要介紹了Python+Django+MySQL實現(xiàn)基于Web版的增刪改查的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • python常規(guī)方法實現(xiàn)數(shù)組的全排列

    python常規(guī)方法實現(xiàn)數(shù)組的全排列

    這篇文章主要介紹了python常規(guī)方法實現(xiàn)數(shù)組的全排列,實例分析了全排列的概念及Python常規(guī)實現(xiàn)技巧,需要的朋友可以參考下
    2015-03-03
  • python實現(xiàn)音樂下載的統(tǒng)計

    python實現(xiàn)音樂下載的統(tǒng)計

    這篇文章主要為大家詳細(xì)介紹了python實現(xiàn)音樂下載的統(tǒng)計,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-06-06
  • pandas實現(xiàn)按行選擇的示例代碼

    pandas實現(xiàn)按行選擇的示例代碼

    這篇文章主要介紹了pandas實現(xiàn)按行選擇的示例代碼,文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-07-07
  • Python下利用BeautifulSoup解析HTML的實現(xiàn)

    Python下利用BeautifulSoup解析HTML的實現(xiàn)

    這篇文章主要介紹了Python下利用BeautifulSoup解析HTML的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01
  • Python入門教程之運算符重載詳解

    Python入門教程之運算符重載詳解

    運算符重載意味著賦予超出其預(yù)定義的操作含義的擴展含義。例如運算符 + 用于添加兩個整數(shù)以及連接兩個字符串和合并兩個列表。本文將通過示例帶大家詳細(xì)了解Python的運算符重載,感興趣的可以了解一下
    2022-09-09
  • 詳解Python實現(xiàn)URL監(jiān)測與即時推送

    詳解Python實現(xiàn)URL監(jiān)測與即時推送

    這篇文章主要為大家介紹了Python實現(xiàn)URL監(jiān)測與即時推送,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-11-11
  • Jupyter加載文件的實現(xiàn)方法

    Jupyter加載文件的實現(xiàn)方法

    這篇文章主要介紹了Jupyter加載文件的實現(xiàn)方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • Python實現(xiàn)在PyPI上發(fā)布自定義軟件包的方法詳解

    Python實現(xiàn)在PyPI上發(fā)布自定義軟件包的方法詳解

    在Python中我們經(jīng)常使用pip來安裝第三方Python軟件包,其實我們每個人都可以免費地將自己寫的Python包發(fā)布到PyPI上。本文我們就將詳細(xì)介紹如何發(fā)布測試包,需要的可以參考一下
    2022-06-06

最新評論