中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

NDArray與numpy.ndarray怎么互相轉換

發布時間:2022-05-23 11:29:39 來源:億速云 閱讀:195 作者:iii 欄目:開發技術

本篇內容主要講解“NDArray與numpy.ndarray怎么互相轉換”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“NDArray與numpy.ndarray怎么互相轉換”吧!

NDArray與numpy.ndarray互相轉換

import numpy as np
from mxnet import nd
# numpy.ndarray 變 mx.NDArray
np_val = np.array([1, 2, 3])   # 定義一個numpy.ndarray
nd_val = nd.array(np_val)   # 深復制 
# NDArray 變 numpy.ndarray
np_val_ = nd_val.asnumpy()

NumPy與ndarray簡介

NumPy簡介

NumPy的全名為Numeric Python,是一個開源的Python科學計算庫,它包括:

  • 一個強大的N維數組對象ndrray;

  • 比較成熟的(廣播)函數庫;

  • 用于整合C/C++和Fortran代碼的工具包;

  • 實用的線性代數、傅里葉變換和隨機數生成函數

NumPy的優點:

  • 對于同樣的數值計算任務,使用NumPy要比直接編寫Python代碼便捷得多;

  • NumPy中的數組的存儲效率和輸入輸出性能均遠遠優于Python中等價的基本數據結構,且其能夠提升的性能是與數組中的元素成比例的;

  • NumPy的大部分代碼都是用C語言寫的,其底層算法在設計時就有著優異的性能,這使得NumPy比純Python代碼高效得多

當然,NumPy也有其不足之處,由于NumPy使用內存映射文件以達到最優的數據讀寫性能,而內存的大小限制了其對TB級大文件的處理;此外,NumPy數組的通用性不及Python提供的list容器。因此,在科學計算之外的領域,NumPy的優勢也就不那么明顯。

數組ndarray

NumPy最重要的一個特點就是其N維數組對象(即ndarray),該對象是一個快速而靈活的大數據集容器,該對象由兩部分組成:

  • 實際的數據;

  • 描述這些數據的元數據;

大部分的數組操作僅僅是修改元數據部分,而不改變其底層的實際數據。數組的維數稱為秩,簡單來說就是如果你需要獲取數組中一個特定元素所需的坐標數,如a是一個2×3×4的矩陣,你索引其中的一個元素必須給定三個坐標a[x,y,z],故它的維數就是3。而軸可以理解為一種對數組空間的分割,以數組a為例,如果我們以0為軸,那么a可以看成是一個由兩個元素構成的數組,其中每個元素都是一個3×4的數組。

我們可以直接將數組看作一種新的數據類型,就像list、tuple、dict一樣,但數組中所有元素的類型必須是一致的,Python支持的數據類型有整型、浮點型以及復數型,但這些類型不足以滿足科學計算的需求,因此NumPy中添加了許多其他的數據類型,如bool、inti、int64、float32、complex64等。同時,它也有許多其特有的屬性和方法。

常用ndarray屬性:

dtype 描述數組元素的類型

shape 以tuple表示的數組形狀

ndim 數組的維度

size 數組中元素的個數

itemsize 數組中的元素在內存所占字節數

T 數組的轉置

flat 返回一個數組的迭代器,對flat賦值將導致整個數組的元素被覆蓋

real/imag 給出復數數組的實部/虛部

nbytes 數組占用的存儲空間

常用ndarray方法:

  
reshape(…)返回一個給定shape的數組的副本
resize(…)返回給定shape的數組,原數組shape發生改變
flatten()/ravel()返回展平數組,原數組不改變
astype(dtype)返回指定元素類型的數組副本
fill()將數組元素全部設定為一個標量值
sum/Prod()計算所有數組元素的和/積
mean()/var()/std()返回數組元素的均值/方差/標準差
max()/min()/ptp()/median()返回數組元素的最大值/最小值/取值范圍/中位數
argmax()/argmin()返回最大值/最小值的索引
sort()對數組進行排序,axis指定排序的軸;kind指定排序算法,默認是快速排序
view()/copy()view創造一個新的數組對象指向同一數據;copy是深復制
tolist()將數組完全轉為列表,注意與直接使用list(array)的區別
compress()返回滿足條件的元素構成的數組

到此,相信大家對“NDArray與numpy.ndarray怎么互相轉換”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

南皮县| 铜川市| 兴国县| 堆龙德庆县| 仪征市| 临漳县| 玉林市| 天台县| 铜川市| 扶余县| 徐水县| 桐柏县| 苗栗县| 延寿县| 嘉禾县| 永济市| 明溪县| 仙桃市| 古蔺县| 广河县| 资讯| 永德县| 河西区| 濮阳县| 阳江市| 剑川县| 小金县| 北碚区| 星子县| 福鼎市| 承德市| 弥渡县| 渑池县| 延寿县| 定结县| 望江县| 嘉义县| 泰和县| 山阳县| 沽源县| 信丰县|