国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Numpy詳解-軸的概念

云深之無跡 ? 來源:云深之無跡 ? 作者:云深之無跡 ? 2022-04-25 10:25 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

首先就是大腸包小腸,這就是軸的概念,除了這個還真的沒有什么別的想法。

最近用numpy,越用這個東西越發現一些基礎概念不明朗,這里簡單的記錄一下。

4570ff4a-c43e-11ec-bce3-dac502259ad0.png

先生成一個三維的數組

459697be-c43e-11ec-bce3-dac502259ad0.png

打印出來的樣子

45ac831c-c43e-11ec-bce3-dac502259ad0.png

從內最小的開始看起,分別是元素,2,3,4

以小[]來界定

45c22b90-c43e-11ec-bce3-dac502259ad0.png

也就是說,首先是一個特別大的整體,一個數組,接著是里面4個小數組,每一個小數組里面有3個小數組,小數組內的單元是一個數對來構成的。

其實這就是軸的概念,只是因為是扁平化的,不直觀。

axis=2

axis=1

axis=0

45d50058-c43e-11ec-bce3-dac502259ad0.png

按照順序來填充

45e62216-c43e-11ec-bce3-dac502259ad0.png

按照數組0軸來相加

46038a0e-c43e-11ec-bce3-dac502259ad0.png

就是加的這個位置的元素

[[0+ 6+12+18=36 1+ 7+13+19=40] [2+ 8+14+20=44 3+ 9+15+21=48] [4+10+16+22=52 5+11+17+23=56]]

46187f68-c43e-11ec-bce3-dac502259ad0.png

再看一個

4633b71a-c43e-11ec-bce3-dac502259ad0.png

就是這樣吧

[[ 0+ 1=1 2+ 3=5 4+ 5=9] [ 6+ 7=13 8+ 9=17 10+11=21] [12+13=25 14+15=29 16+17=33] [18+19=37 20+21=41 22+23=45]]

464b34c6-c43e-11ec-bce3-dac502259ad0.png

這個就沒有什么好說的了吧

46609c08-c43e-11ec-bce3-dac502259ad0.png

其中第一軸是最大的稱為0號,

其次開始從左到右依次的放置

NumPy數組的維數稱為秩(rank),一維數組的秩為1,二維數組的秩為2,以此類推。在NumPy中,每一個線性的數組稱為是一個軸(axes),秩其實是描述軸的數量。比如說,二維數組相當于是兩個一維數組,其中第一個一維數組中每個元素又是一個一維數組。所以一維數組就是NumPy中的軸(axes),第一個軸相當于是底層數組,第二個軸是底層數組里的數組。而軸的數量——秩,就是數組的維數。

NumPy的數組中比較重要ndarray對象屬性有:

1.ndarray.ndim:數組的維數(即數組軸的個數),等于秩。最常見的為二維數組(矩陣)。

2.ndarray.shape:數組的維度。為一個表示數組在每個維度上大小的整數元組。例如二維數組中,表示數組的“行數”和“列數”。ndarray.shape返回一個元組,這個元組的長度就是維度的數目,即ndim屬性。

3.ndarray.size:數組元素的總個數,等于shape屬性中元組元素的乘積。

4.ndarray.dtype:表示數組中元素類型的對象,可使用標準的Python類型創建或指定dtype。另外也可使用前一篇文章中介紹的NumPy提供的數據類型。

5.ndarray.itemsize:數組中每個元素的字節大小。例如,一個元素類型為float64的數組itemsiz屬性值為8(float64占用64個bits,每個字節長度為8,所以64/8,占用8個字節),又如,一個元素類型為complex32的數組item屬性為4(32/8)。

6.ndarray.data:包含實際數組元素的緩沖區,由于一般通過數組的索引獲取元素,所以通常不需要使用這個屬性。

其實進一步的,是闡述了一種方向的問題:在二維數組中axis=0是按列的,axis=1意味著按行。

468405b2-c43e-11ec-bce3-dac502259ad0.png

這個圖太漂亮了

事實上,到這里的時候還是沒有說明白主要的軸到底是怎么出來的,那繼續。

46a74310-c43e-11ec-bce3-dac502259ad0.png

軸是行列的方向

如果是多維的數組,那axis=0就是向下的軸,axis=1是往右延的軸。

這些東西影響著你未來作用到上面的函數,該算哪些東西。而且進行計算的時候是會進行折疊,就是從這些指定的位置采用運算規律。

46c7cb9e-c43e-11ec-bce3-dac502259ad0.png

就是這樣的,加到一起,2就變成了1

46ec82e0-c43e-11ec-bce3-dac502259ad0.png

axis=0的拼接方式

471597ac-c43e-11ec-bce3-dac502259ad0.png

axis=1,橫向拼接

結論:將NumPy軸視為我們可以執行操作的方向。

接下來再補充一些,別的理解,盡量我們一篇文章解決這個問題。

473a0e3e-c43e-11ec-bce3-dac502259ad0.png

這個也是

47635046-c43e-11ec-bce3-dac502259ad0.png

這個圖是讓我喜歡的不行,它清楚的展示了這個數組軸的包含關系

47aa845c-c43e-11ec-bce3-dac502259ad0.png

數組之間的算數關系

47d62eea-c43e-11ec-bce3-dac502259ad0.png

運算緊湊,使用了非動態的特性

4800da00-c43e-11ec-bce3-dac502259ad0.png

使用Python的列表語法可以輕松的創建一個數組,要確保元素都一致

4821d642-c43e-11ec-bce3-dac502259ad0.png

由于數組的原因,沒有了動態添加元素的特性,所以只能提前的把位置留好。

4844936c-c43e-11ec-bce3-dac502259ad0.png

再有了變量的情況先,可以使用like函數生成一個相似的數組

485dd584-c43e-11ec-bce3-dac502259ad0.png

提供了完整的生成函數

487e3cde-c43e-11ec-bce3-dac502259ad0.png

可以使用單調序列初始化數組

48a88908-c43e-11ec-bce3-dac502259ad0.png

arange對浮點不太友好

48d6e7bc-c43e-11ec-bce3-dac502259ad0.png

隨機數組也可以生成,這個太常見了

生成完成了,下一個階段就是取數了;

48fe13dc-c43e-11ec-bce3-dac502259ad0.png

就像這樣,通過索引來切割

49273e24-c43e-11ec-bce3-dac502259ad0.png

布爾和掩碼真的是太好用了!!!!

495cfba4-c43e-11ec-bce3-dac502259ad0.png

還有專有的函數,大規模的進行取數操作

49821844-c43e-11ec-bce3-dac502259ad0.png

向量化操作無疑是最引人注目的東西

49a6f7e0-c43e-11ec-bce3-dac502259ad0.png

浮點也OJBK

49c47ee6-c43e-11ec-bce3-dac502259ad0.png

常見函數不在話下,矢量化的意義在于可以同時操作海量數據,具有天然的并行化。

49e4f77a-c43e-11ec-bce3-dac502259ad0.png

這是內積和叉積

4a04794c-c43e-11ec-bce3-dac502259ad0.png

三角函數不能少

4a255c34-c43e-11ec-bce3-dac502259ad0.png

四舍五入的操作也有

4a487386-c43e-11ec-bce3-dac502259ad0.png

關于統計的功能也有

4a709ef6-c43e-11ec-bce3-dac502259ad0.png

矩陣的初始化,注意參數的位置,先行,后列

4a98bd14-c43e-11ec-bce3-dac502259ad0.png

隨機矩陣也是經常要用的

4ac9542e-c43e-11ec-bce3-dac502259ad0.png

索引語法要好好的看,注意是從0開始,記得+1

4af8cc18-c43e-11ec-bce3-dac502259ad0.png

上面放過這個圖,但是為了完整性,這里再放一次

4b182e50-c43e-11ec-bce3-dac502259ad0.png

@計算矩陣的乘積

4b3bc6e4-c43e-11ec-bce3-dac502259ad0.png

廣播機制,這個怎么說呢。就是運算我們一般是規模相同的進行計算,不相同的時候需要變的相同。其實就是一套規則。

4b5077e2-c43e-11ec-bce3-dac502259ad0.png

先簡單點,規模一樣

4b61c092-c43e-11ec-bce3-dac502259ad0.png

這個就不一樣了

4b7efc02-c43e-11ec-bce3-dac502259ad0.png

這就是廣播,先是維數的調整,兩個維數一致,接著調整內部的參數

4b3bc6e4-c43e-11ec-bce3-dac502259ad0.png

你看這個,9x9與后面這樣的東西運算,不就是要使用廣播嗎?

4bb68668-c43e-11ec-bce3-dac502259ad0.png

轉置

4bd88bdc-c43e-11ec-bce3-dac502259ad0.png

數組重構

4bff1cd4-c43e-11ec-bce3-dac502259ad0.png

互相之間的轉換圖,這個要記住

4c2210fe-c43e-11ec-bce3-dac502259ad0.png

拼接操作,我也寫過

4c53fcae-c43e-11ec-bce3-dac502259ad0.png

也是拼接

4c754580-c43e-11ec-bce3-dac502259ad0.png

拆分

4c9c3bf4-c43e-11ec-bce3-dac502259ad0.png

tile復雜黏貼,repeat是分頁打印

4cc10b00-c43e-11ec-bce3-dac502259ad0.png

這個是可以刪除對應的行列,這不就是白給

4ce517f2-c43e-11ec-bce3-dac502259ad0.png

插入操作

4d0b7f0a-c43e-11ec-bce3-dac502259ad0.png

邊界添加常數,就好像鑲邊一樣

下面的內容有趣:

4d2dad96-c43e-11ec-bce3-dac502259ad0.png

創建這樣的東西,C和Python的做法是這樣的

4d588fe8-c43e-11ec-bce3-dac502259ad0.png

matlab這樣做,相對于先生成兩個行向量,接著開始廣播,運算

4d7770e8-c43e-11ec-bce3-dac502259ad0.png

這個地方是numpy的做法,效率更高。上面是生成網格的算法

4d94ba86-c43e-11ec-bce3-dac502259ad0.png

numpy的排序算法有點問題,這里就不討論了,因為我也沒有搞明白

4db7681a-c43e-11ec-bce3-dac502259ad0.png

返回索引,其實就是坐標,有時位置是很重要的

4de5c354-c43e-11ec-bce3-dac502259ad0.png

all和any就是有沒有的問題

4e0d2f16-c43e-11ec-bce3-dac502259ad0.png

三維的接下來會說

4e4af350-c43e-11ec-bce3-dac502259ad0.png

至于形狀怎么樣,會看你的約定。

接下來再加點東西,也不知道有沒有人能看到這里。

4e7e47aa-c43e-11ec-bce3-dac502259ad0.png

上面頻繁的說了拼接的事情,這里帶你看看有什么參數

4e9bb06a-c43e-11ec-bce3-dac502259ad0.jpg

這個圖沒什么用,我就是覺得好看

審核編輯 :李倩

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 元素
    +關注

    關注

    0

    文章

    47

    瀏覽量

    8762
  • 數據類型
    +關注

    關注

    0

    文章

    237

    瀏覽量

    14185
  • 數組
    +關注

    關注

    1

    文章

    420

    瀏覽量

    27358

原文標題:Numpy詳解-軸的概念

文章出處:【微信號:TT1827652464,微信公眾號:云深之無跡】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    驅動,如何一步到位?TMCM-6214 的多控制!

    運動控制,聽起來就讓人頭大:布線像蜘蛛網、編程像天書、控制柜擠得像沙丁魚罐頭。每增加一個,線纜多一堆,代碼量蹭蹭漲,空間還得精打細算。一個模塊搞定六個有沒有一個模塊能把六個
    的頭像 發表于 03-05 16:05 ?34次閱讀
    六<b class='flag-5'>軸</b>驅動,如何一步到位?TMCM-6214 的多<b class='flag-5'>軸</b>控制!

    陀螺儀怎么選?

    在無人機、機器人、VR等智能設備中,姿態傳感器是感知運動的核心。面對市場上六、九、十等不同配置,該如何選擇?本文以海凌科HLK-AS201系列為例,為你清晰解析三者的區別與選型要點。一、六
    的頭像 發表于 12-22 15:27 ?701次閱讀
    多<b class='flag-5'>軸</b>陀螺儀怎么選?

    無人機是如何工作的?

    飛行器、無人機——無論怎么稱呼它們,這些小玩意兒都既迷人又好玩!對于喜歡DIY的人來說,組裝一架四飛行器絕對是一個很棒的項目。但四飛行器究竟是如何工作的呢?它是如何飛行的?需要組裝哪些部件
    的頭像 發表于 11-14 10:28 ?798次閱讀
    四<b class='flag-5'>軸</b>無人機是如何工作的?

    Hudi系列:Hudi核心概念之索引(Indexs)

    Hudi系列:Hudi核心概念(版本1.0) ?Hudi架構 ?一. 時間(TimeLine)s ?1.1 時間(TimeLine)概念 ?1.2 Hudi的時間線由組成 ?1.3
    的頭像 發表于 10-21 09:47 ?391次閱讀
    Hudi系列:Hudi核心<b class='flag-5'>概念</b>之索引(Indexs)

    Hudi系列:Hudi核心概念之文件布局(Storage Layouts)

    Hudi系列:Hudi核心概念(版本1.0) ?Hudi架構 ?一. 時間(TimeLine) ?1.1 時間(TimeLine)概念 ?1.2 Hudi的時間線由組成 ?1.3
    的頭像 發表于 10-14 16:06 ?627次閱讀
    Hudi系列:Hudi核心<b class='flag-5'>概念</b>之文件布局(Storage Layouts)

    邊聊安全 | 以L3級自動駕駛為例,詳解DDT、DDT Fallback、MRC、MRM概念

    以L3級自動駕駛為例,詳解DDT、DDTFallback、MRC、MRM概念寫在前面:在自動駕駛技術迅猛發展的今天,動態駕駛任務(DDT)及其后備(DDTfallback)成為理解自動駕駛系統運作
    的頭像 發表于 09-05 16:20 ?4256次閱讀
    邊聊安全 | 以L3級自動駕駛為例,<b class='flag-5'>詳解</b>DDT、DDT Fallback、MRC、MRM<b class='flag-5'>概念</b>

    GraniStudio:單Jog運動例程

    1.文件運行 導入工程 雙擊運行桌面GraniStudio.exe。 通過引導界面導入單Jog運動例程,點擊導入按鈕。 打開單Jog運動例程所在路徑,選中單Jog運動.gsp文件,點擊
    的頭像 發表于 08-22 16:44 ?719次閱讀
    GraniStudio:單<b class='flag-5'>軸</b>Jog運動例程

    GraniStudio:獲取信息例程

    1.文件運行 導入工程 雙擊運行桌面 GraniStudio .exe。 通過引導界面導入獲取信息運動例程,點擊導入按鈕。 打開獲取信息例程所在路徑,選中獲取信息.gsp文件,點擊打開,完成
    的頭像 發表于 08-22 16:40 ?662次閱讀
    GraniStudio:獲取<b class='flag-5'>軸</b>信息例程

    GraniStudio:控制設置例程

    1.文件運行 導入工程 雙擊運行桌面GraniStudio.exe。 通過引導界面導入控制設置例程,點擊導入按鈕。 打開控制設置例程所在路徑,選中控制設置.gsp文件,點擊打開,完成導入
    的頭像 發表于 08-22 16:35 ?432次閱讀
    GraniStudio:控制<b class='flag-5'>軸</b>設置例程

    GraniStudio:復位例程

    1.文件運行 導入工程 雙擊運行桌面GraniStudio.exe。 通過引導界面導入復位例程,點擊導入按鈕。 打開復位運動例程所在路徑,選中軸復位運動.gsp文件,點擊打開,完成導入。 2.
    的頭像 發表于 08-22 16:05 ?667次閱讀
    GraniStudio:<b class='flag-5'>軸</b>復位例程

    yolov11轉kmodel,numpy是要降級為1.x嗎?

    python3.9,yolo是最新的穩定版,和yolo捆綁pip安裝的numpy是2.0.1 錯誤日志
    發表于 08-11 08:16

    GraniStudio零代碼平臺復位算子支持多少個同時復位,有哪些回零模式?

    GraniStudio平臺在復位的功能上未對同時復位的數進行硬性限制,理論上支持任意數量同步復位,需要考慮的是在做多同步復位時要評估機械安全風險,建議提前確認機械在多
    的頭像 發表于 07-07 18:02 ?668次閱讀
    GraniStudio零代碼平臺<b class='flag-5'>軸</b>復位算子支持多少個<b class='flag-5'>軸</b>同時復位,有哪些回零模式?

    鴻蒙應用px,vp,fp概念詳解

    【HarmonyOS 5】鴻蒙應用px,vp,fp概念詳解 ##鴻蒙開發能力 ##HarmonyOS SDK應用服務##鴻蒙金融類應用 (金融理財# 一、前言 目前的鴻蒙開發者,大多數是從前端或者
    的頭像 發表于 07-07 11:48 ?1365次閱讀
    鴻蒙應用px,vp,fp<b class='flag-5'>概念</b><b class='flag-5'>詳解</b>

    【HarmonyOS 5】鴻蒙中的UIAbility詳解(三)

    詳解系列的最終章。主要針對UIAbility的冷啟動和熱啟動,對于want數據的處理。UIAbility的備份恢復,UIAbility的接續等高級功能的概念和使用講解。 二、UIAbility啟動模式
    的頭像 發表于 06-14 22:32 ?754次閱讀

    電機為什么會產生電流?

    電機是現代工業中不可或缺的動力設備,廣泛應用于各種機械系統中。然而,在電機的運行過程中,有時會出現一種被稱為“電流”的現象,這種現象不僅會影響電機的正常運行,還可能導致設備的損壞。那么,電機
    的頭像 發表于 06-07 16:14 ?1552次閱讀
    電機為什么會產生<b class='flag-5'>軸</b>電流?