佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > Python基礎(chǔ)之Numpy的基本用法詳解

Python基礎(chǔ)之Numpy的基本用法詳解

熱門標(biāo)簽:百度AI接口 客戶服務(wù) 硅谷的囚徒呼叫中心 企業(yè)做大做強 電話運營中心 Win7旗艦版 呼叫中心市場需求 語音系統(tǒng)

一、數(shù)據(jù)生成

1.1 手寫數(shù)組

a = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]) # 一維數(shù)組
b = np.array([[1, 2], [3, 4]]) #二維數(shù)組

1.2 序列數(shù)組

numpy.arange(start, stop, step, dtype),start默認(rèn)0,step默認(rèn)1

c = np.arange(0, 10, 1, dtype=int)  # =np.arange(10)  [0 1 2 3 4 5 6 7 8 9]
d = np.array([np.arange(1, 3), np.arange(4, 6)])  # 二維數(shù)組
# 不過為了避免麻煩,通常序列二維數(shù)組都是通過reshape進(jìn)行重新組織
dd = c.reshape(2, 5)  # 將一維數(shù)組重新組合成2行5列

1.3 隨機數(shù)組

numpy.random.random(size=None) 該方法返回[0.0, 1.0)范圍的隨機小數(shù)。
numpy.random.randint() 該方法返回[low, high)范圍的隨機整數(shù)。
該方法有三個參數(shù)low、high、size 三個參數(shù)。默認(rèn)high是None,如果只有l(wèi)ow,那范圍就是[0,low)。如果有high,范圍就是[low,high)
numpy.random.randn(d0,d1,…,dn) 該方法返回一個或一組樣本,具有正態(tài)分布
np.random.normal 指定期望和方差的正太分布

e = np.random.random(size=2)  # 一維數(shù)組,元素兩個,[0.0,1.0]的隨機數(shù)
f = np.random.random(size=(2, 3))  # 兩行三列數(shù)組,[0.0,1.0]的隨機數(shù)

h = np.random.randint(10, size=3)  # [0,10]范圍內(nèi)的一行三列隨機整數(shù)
i = np.random.randint(5, 10, size=(2, 3))  # [5,10]范圍內(nèi)的2行3列隨機整數(shù)

1.4 其他方式數(shù)組

numpy.zeros 創(chuàng)建指定大小的數(shù)組,數(shù)組元素以0 來填充
numpy.ones 創(chuàng)建指定形狀的數(shù)組,數(shù)組元素以1 來填充
numpy.empty 創(chuàng)建一個指定形狀(shape)、數(shù)據(jù)類型(dtype)且未初始化的數(shù)組,里面的元素的值是之前內(nèi)存的值
np.linspace 創(chuàng)建一個一維數(shù)組,數(shù)組是一個等差數(shù)列構(gòu)成的
numpy.logspace 創(chuàng)建一個于等比數(shù)

j = np.zeros((2, 5))
k = np.ones((2, 5))
l = np.linspace(1, 20, 10)

二、數(shù)組屬性查看

ndarray.ndim
darray.shape 數(shù)組的維度和列,對于矩陣,n 行m 列
ndarray.size 數(shù)組元素的總個數(shù),相當(dāng)于.shape 中n*m 的值
ndarray.dtype ndarray 對象的元素類型
ndarray.itemsize ndarray 對象中每個元素的大小,以字節(jié)為單位
ndarray.flags ndarray 對象的內(nèi)存信息
ndarray.real ndarray 元素的實部
ndarray.imag ndarray 元素的虛部
ndarray.data 包含實際數(shù)組元素的緩沖區(qū),由于一般通過數(shù)組的索引獲取元素,所以通常不需要使用這個屬性。

print('ndim:數(shù)組的秩(維度)'.center(20, '*'))
print('ndim:', i.shape[1])

三、數(shù)組索引

x = np.arange(1, 13) # 一維數(shù)組
a = x.reshape(4, 3) # 二維數(shù)組
print(‘x:', x)
print(‘a(chǎn):', a)

3.1 一維數(shù)組的索引

print(x[2:])
print(x[3:8])

3.2 二維數(shù)組的索引

print(a[0])  # 第一行
print(a[2, 2])  # 第三行第4列
print(a[:, 2])
print(a[::2, 0])  # 所有奇數(shù)行第1列數(shù)據(jù)
print(a[(2, 1), (1, 2)])  # 第3行第2列,第2行第3列   = np.array((a[2,1],a[1,2]))取出來后在重新生成新的數(shù)組
print(a[-2])  # 獲取倒數(shù)第二行
print(a[::-1])  # 行倒序
print(a[::-1, ::-1])  # 行列倒序

四、數(shù)組的方法

4.1 改變數(shù)組維度

reshape將一維數(shù)組變成二維或者三維
ravel將三維數(shù)組變成一維數(shù)組,flatten將二維數(shù)組變成一維數(shù)組

4.2 數(shù)組拼接

使用numpy.hstack(a1,a2) 函數(shù)將兩個數(shù)組水平組合
numpy.vstack(a1,a2) 函數(shù)可以將兩個或多個數(shù)組垂直組合起來形成一個數(shù)組
使用numpy.concatenate((a1, a2, …), axis),控制axis參數(shù)的值也可以實現(xiàn)hstack和vstack的功能,axis=0等同于vstack、axis=1等同于hstack

4.3 數(shù)組分隔

b = np.split(x, 4)  # 將一個一維數(shù)組四等分, 用b[1]的方式獲取每個塊的數(shù)據(jù)
# print(b[1])
c = np.split(a, 2, axis=0)  # 二維數(shù)組的垂直分隔,按行分隔成兩部分
# print(c[0])
d = np.split(a, [2], axis=1)  # 二維數(shù)組的水平分隔,按列分隔成兩部分
# print(d[0])

4.4 算術(shù)運算

加減乘除: add(),subtract(),multiply() 和divide()
np.sum() 求和
np.prod() 所有元素相乘
np.mean() 平均值
np.std() 標(biāo)準(zhǔn)差
np.var() 方差
np.median() 中數(shù)
np.power() 冪運算
np.sqrt() 開方
np.min() 最小值
np.max() 最大值
np.argmin() 最小值的下標(biāo)
np.argmax() 最大值的下標(biāo)
np.inf 無窮大
np.exp(10) 以e 為底的指數(shù)
np.log(10) 對數(shù)

到此這篇關(guān)于Python基礎(chǔ)之Numpy的基本用法詳解的文章就介紹到這了,更多相關(guān)Python Numpy用法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Python 機器學(xué)習(xí)庫 NumPy入門教程
  • Python基礎(chǔ)之numpy庫的使用
  • Python利用numpy實現(xiàn)三層神經(jīng)網(wǎng)絡(luò)的示例代碼
  • Python數(shù)據(jù)清洗工具之Numpy的基本操作
  • python numpy中setdiff1d的用法說明
  • Python Numpy之linspace用法說明
  • python 將numpy維度不同的數(shù)組相加相乘操作
  • python numpy.power()數(shù)組元素求n次方案例
  • python中numpy.empty()函數(shù)實例講解
  • python中numpy數(shù)組與list相互轉(zhuǎn)換實例方法
  • Python OpenCV中的numpy與圖像類型轉(zhuǎn)換操作
  • Python機器學(xué)習(xí)三大件之一numpy

標(biāo)簽:長沙 海南 喀什 崇左 濟南 山西 山西 安康

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Python基礎(chǔ)之Numpy的基本用法詳解》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    鸡西市| 盘山县| 五大连池市| 赤壁市| 桦南县| 抚州市| 肥城市| 济阳县| 南雄市| 砀山县| 承德县| 桦甸市| 瑞昌市| 景德镇市| 合江县| 大荔县| 淮滨县| 石楼县| 肇源县| 安多县| 云安县| 翁牛特旗| 获嘉县| 德江县| 平南县| 延庆县| 吉安市| 河东区| 通山县| 湘潭市| 静安区| 泰顺县| 承德市| 额尔古纳市| 灵台县| 镇巴县| 噶尔县| 麻城市| 秦安县| 莫力| 彭阳县|