亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

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

Python numpy怎么用

發布時間:2022-01-26 09:47:00 來源:億速云 閱讀:150 作者:iii 欄目:開發技術

這篇“Python numpy怎么用”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“Python numpy怎么用”文章吧。

一、前言

機器學習三大件:numpy, pandas, matplotlib

Numpy(Numerical Python)是一個開源的Python科學計算庫,用于快速處理任意維度的數組。

Numpy支持常見的數組和矩陣操作。對于同樣的數值計算任務,使用Numpy比直接使用Python要簡潔的多。

Numpy使用ndarray對象來處理多維數組,該對象是一個快速而靈活的大數據容器。

NumPy提供了一個N維數組類型ndarray

import numpy as np
score = np.array(
[[80, 89, 86, 67, 79],
[78, 97, 89, 67, 81],
[90, 94, 78, 67, 74],
[91, 91, 90, 67, 69],
[76, 87, 75, 67, 86],
[70, 79, 84, 67, 84],
[94, 92, 93, 67, 64],
[86, 85, 83, 67, 80]])

score

array([[80, 89, 86, 67, 79],
[78, 97, 89, 67, 81],
[90, 94, 78, 67, 74],
[91, 91, 90, 67, 69],
[76, 87, 75, 67, 86],
[70, 79, 84, 67, 84],
[94, 92, 93, 67, 64],
[86, 85, 83, 67, 80]])

Numpy專門針對ndarray的操作和運算進行了設計,所以數組的存儲效率和輸入輸出性能遠優于Python中的嵌套列表,數組越大,Numpy的優勢就越明顯。

ndarray在存儲數據的時候,數據與數據的地址都是連續的,這樣就給使得批量操作數組元素時速度更快。

list – 分離式存儲,存儲內容多樣化
ndarray – 一體式存儲,存儲類型必須一樣
ndarray支持并行化運算(向量化運算)
ndarray底層是用C語言寫的,效率更高,釋放了GIL

二、基本操作

# 生成0和1的數組
ones = np.ones([4,8])
ones

array([[1., 1., 1., 1., 1., 1., 1., 1.],
[1., 1., 1., 1., 1., 1., 1., 1.],
[1., 1., 1., 1., 1., 1., 1., 1.],
[1., 1., 1., 1., 1., 1., 1., 1.]])

# 生成等間隔的數組
np.linspace(0, 100, 11)

array([ 0., 10., 20., 30., 40., 50., 60., 70., 80., 90.,
100.])

#創建等差數組 — 指定步長
np.arange(10, 50, 2)

array([10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48])

三、正太分布

  • rand函數根據給定維度生成[0,1)之間的數據,包含0,不包含1

np.random.rand(4,2)

array([[ 0.02173903, 0.44376568],
[ 0.25309942, 0.85259262],
[ 0.56465709, 0.95135013],
[ 0.14145746, 0.55389458]])

  • randn函數返回一個或一組樣本,具有標準正態分布

np.random.randn(2,4)

array([[ 0.27795239, -2.57882503, 0.3817649 , 1.42367345],
[-1.16724625, -0.22408299, 0.63006614, -0.41714538]])

  • randint返回隨機整數,范圍區間為[low,high),包含low,不包含high

np.random.randint(1,5) # 返回1個[1,5)時間的隨機整數

4

  • 生成均勻分布的隨機數,舉例1:生成均值為1.75,標準差為1的正態分布數據,100000000個

x1 = np.random.normal(1.75, 1, 100000000)

array([2.90646763, 1.46737886, 2.21799024, …, 1.56047411, 1.87969135, 0.9028096 ])

  • 均勻分布

# 生成均勻分布的隨機數
x2 = np.random.uniform(-1, 1, 100000000)

array([ 0.22411206, 0.31414671, 0.85655613, …, -0.92972446, 0.95985223, 0.23197723])

四、數組的索引、切片

# 三維
a1 = np.array([ [[1,2,3],[4,5,6]], [[12,3,34],[5,6,7]]])
# 返回結果
array([[[ 1,  2,  3],
        [ 4,  5,  6]],

       [[12,  3, 34],
        [ 5,  6,  7]]])
# 索引、切片
a1[0, 0, 1]   # 輸出: 2

五、形狀修改

stock_change.reshape([5, 4])  #5*4
stock_change.reshape([-1,10])  #2*10,-1: 表示通過待計算

六、轉置

stock_change.T.shape

七、類型轉換

arr = np.array([[[1, 2, 3], [4, 5, 6]], [[12, 3, 34], [5, 6, 7]]])
arr.tostring()

八、數組的去重

temp = np.array([[1, 2, 3, 4],[3, 4, 5, 6]])

>>> np.unique(temp)
array([1, 2, 3, 4, 5, 6])

邏輯運算
直接進行大于,小于的判斷:test_score > 60
合適之后,可以直接進行賦值:test_score[test_score > 60] = 1
通用判斷函數
np.all() np.all(score[0:2, :] > 60)
np.any() np.any(score[0:2, :] > 80)
統計運算
np.max()
np.min()
np.median()
np.mean()
np.std()
np.var()
np.argmax(axis=) — 最大元素對應的下標
np.argmin(axis=) — 最小元素對應的下標

九、廣播機制

  • 數組運算,滿足廣播機制,就OK

1.維度相等

2.shape(其中對應的地方為1,也是可以的)

arr1 = np.array([[0],[1],[2],[3]])
arr1.shape
# (4, 1)

arr2 = np.array([1,2,3])
arr2.shape
# (3,)

arr1+arr2
# 結果是:
array([[1, 2, 3],
       [2, 3, 4],
       [3, 4, 5],
       [4, 5, 6]])

以上就是關于“Python numpy怎么用”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。

向AI問一下細節

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

AI

渝中区| 武宣县| 安陆市| 专栏| 辽源市| 阳信县| 吉水县| 邳州市| 岳普湖县| 洪雅县| 团风县| 凉城县| 岑巩县| 沛县| 建水县| 利津县| 黔东| 河间市| 黄山市| 蕉岭县| 榕江县| 华池县| 伊宁市| 成安县| 自贡市| 定结县| 台中市| 雷波县| 隆昌县| 澄迈县| 天水市| 贺州市| 双鸭山市| 福鼎市| 梧州市| 淮滨县| 美姑县| 佛坪县| 黄梅县| 同心县| 余姚市|