亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

Python機器學習三大件之一numpy

瀏覽:2日期:2022-06-20 10:13:29
一、前言

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

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

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

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

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

import numpy as npscore = 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的優勢就越明顯。

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*4stock_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的文章就介紹到這了,更多相關python numpy內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 欧美精品在线视频 | 特大巨黑人吊与黑人性xxxx | 在线毛片一区二区不卡视频 | 精品日韩欧美一区二区三区 | 黄色成人在线网站 | 免费看欧美一级特黄a大片一 | 免费a级特黄国产大片 | 久久视频在线播放视频99re6 | 精品视频入口 | 欧美亚洲国产精品久久第一页 | 18美女福利视频网站免费观看 | 色天天久久 | 国自产拍在线视频天天更新 | 国产精品免费观看视频 | 亚洲午夜国产片在线观看 | 99www综合久久爱com | 精品欧美一区二区三区免费观看 | 欧美啪啪毛片一区二区 | 国产三级黄色片 | 91porn丫九色 | 亚洲 欧美 清纯 校园 另类 | 黄色片免费看 | 国产精品美女自拍 | 1024香蕉国产在线视频 | 免费观看大片毛片 | 国产一区精品在线 | 国产在线一区二区三区欧美 | 国产精品无码久久综合网 | 日韩精品久久久免费观看夜色 | 日韩无套 | 一级黄色网络 | 亚洲与黑人 | xxx国产| 亚洲一区亚洲二区亚洲三区 | 蜜桃视频一区二区在线观看 | 欧美aaaa在线观看视频免费 | 国产成+人+综合+欧美 亚洲 | 日韩综合一区 | 免费xxx成年大片 | 亚洲欧美一区二区三区国产精品 | 日本国产免费一区不卡在线 |