日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

numpy的基本使用3

發布時間:2024/1/23 编程问答 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 numpy的基本使用3 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Numpy的基本使用3

官網:http://www.numpy.org

import numpy as np #聚合 #生成10個隨機數 L = np.random.random(10) L array([0.05703554, 0.03902933, 0.4824235 , 0.15286251, 0.25063995,0.86616324, 0.39476347, 0.86343803, 0.77289392, 0.13780678]) #Python中: sum(L) 4.017056282550913 #Numpy中(效率更高)推薦該方式 np.sum(L) 4.017056282550913 np.min(L) 0.039029333319153814 L.max() 0.8661632444424849 #矩陣中: X = np.arange(16).reshape(4,4) X array([[ 0, 1, 2, 3],[ 4, 5, 6, 7],[ 8, 9, 10, 11],[12, 13, 14, 15]]) np.sum(X) 120 #x=0 x軸壓縮 沿y軸(列)求和 np.sum(X,axis=0) array([24, 28, 32, 36]) np.sum(X,axis=1) array([ 6, 22, 38, 54]) #所有元素乘積 np.prod(X) 0 #求平均值 np.mean(X) 7.5 #求中位數 np.median(X) 7.5 #百分位 np.percentile(X,q=50) 7.5 #繪圖中常用的5個百分位點: X = np.arange(1,101) print(X) [ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1819 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 3637 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 5455 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 7273 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 9091 92 93 94 95 96 97 98 99 100] for percent in [0,25,50,75,100]: ... print(np.percentile(X,q=percent)); ... 1.0 25.75 50.5 75.25 100.0 #方差: np.var(X) 833.25 #生成10000個均值為0 標準差為1的符合正態分布的點: X = np.random.normal(0,1,size=10000) #平均值趨近于0 np.mean(X) -0.0005517474486229314 #標準差趨近于1 np.std(X) 1.0011496373394013#索引 #最小值的索引 X array([ 0.45997786, -0.79725882, -0.87003988, ..., 0.72032504,-0.13463416, 0.12829127]) np.argmin(X) 7103#排序與索引 x = np.arange(16) x array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]) #shuffle打亂順序 np.random.shuffle(x) x array([ 9, 12, 0, 7, 5, 11, 3, 13, 6, 1, 15, 8, 4, 2, 10, 14]) np.sort(x) array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]) #矩陣中排序 #生成0-9之間4*4的隨機二維數組 X = np.random.randint(10,size=(4,4)) X array([[6, 9, 6, 9],[5, 4, 8, 9],[9, 4, 2, 7],[5, 5, 5, 1]]) #每行排序 np.sort(X) array([[6, 6, 9, 9],[4, 5, 8, 9],[2, 4, 7, 9],[1, 5, 5, 5]]) #axis默認為1 np.sort(X,axis=1) array([[6, 6, 9, 9],[4, 5, 8, 9],[2, 4, 7, 9],[1, 5, 5, 5]]) #每列排序 np.sort(X,axis=0) array([[5, 4, 2, 1],[5, 4, 5, 7],[6, 5, 6, 9],[9, 9, 8, 9]]) x = np.arange(10) np.random.shuffle(x) x array([7, 6, 4, 9, 0, 5, 3, 8, 1, 2]) #根據值的大小排序 顯示其索引 例如:0所在索引為4 np.argsort(x) array([4, 8, 9, 6, 2, 5, 1, 0, 7, 3], dtype=int64)#partition #參考快排中的分治思想的標識位 索引3之前的都比該位置小(無序),后的都比該位置大(無序) np.partition(x,3) #返回索引 array([1, 0, 2, 3, 4, 5, 6, 7, 8, 9])X array([[6, 9, 6, 9],[5, 4, 8, 9],[9, 4, 2, 7],[5, 5, 5, 1]]) #每行 默認axis=1 np.partition(X,1,axis=1) array([[6, 6, 9, 9],[4, 5, 8, 9],[2, 4, 9, 7],[1, 5, 5, 5]]) #每列 np.partition(X,1,axis=0) array([[5, 4, 2, 1],[5, 4, 5, 7],[9, 9, 6, 9],[6, 5, 8, 9]])#Fancy Indexing x array([7, 6, 4, 9, 0, 5, 3, 8, 1, 2]) x[3] 9 x[3:10] array([9, 0, 5, 3, 8, 1, 2]) #第三個參數為步長 x[3:10:2] array([9, 5, 8, 2]) #指定索引 Fancy Index index = [3,5,9] x[index] array([9, 5, 2])index = np.array([[0,2],[1,3]]) x[index] array([[7, 4],[6, 9]])X = np.arange(16).reshape(4,-1) X array([[ 0, 1, 2, 3],[ 4, 5, 6, 7],[ 8, 9, 10, 11],[12, 13, 14, 15]]) row = np.array([0,1,2]) col = np.array([1,2,3]) X[row,col] #取得是(0,1) (1,2) (2,3)對應位置的值 array([ 1, 6, 11]) X[0,col] array([1, 2, 3]) #復習::2表示前兩行 X[:2,col] array([[1, 2, 3],[5, 6, 7]]) #復習:1:3表示中間兩行1和2 col = [True,False,True,True] X[1:3,col] array([[ 4, 6, 7],[ 8, 10, 11]]) X array([[ 0, 1, 2, 3],[ 4, 5, 6, 7],[ 8, 9, 10, 11],[12, 13, 14, 15]]) col [True, False, True, True]#numpy與array的比較: x array([7, 6, 4, 9, 0, 5, 3, 8, 1, 2]) x>=3 array([ True, True, True, True, False, True, True, True, False,False]) np.sum(x>=3) 7 np.all(x>=0) True X array([[ 0, 1, 2, 3],[ 4, 5, 6, 7],[ 8, 9, 10, 11],[12, 13, 14, 15]]) np.sum(X%2==0) 8 #查看每行: np.sum(X%2==0,axis=1) array([2, 2, 2, 2]) #查看每列: np.sum(X%2==0,axis=0) array([4, 0, 4, 0]) #注意:與或符號為單個 np.sum((x>3)&(x<8)) 4 np.sum((x>3)|(x<8)) 10 (x>3)|(x<8) array([ True, True, True, True, True, True, True, True, True,True]) np.sum(~(x>3)) 4 #直接使用: x[(x>3)|(x<8)] array([7, 6, 4, 9, 0, 5, 3, 8, 1, 2]) x array([7, 6, 4, 9, 0, 5, 3, 8, 1, 2]) x[x>3] array([7, 6, 4, 9, 5, 8])

跟著大佬梳理的流程走下來的,在這里注明一下出處:

https://github.com/Exrick/Machine-Learning
注:大佬的更直觀詳細

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的numpy的基本使用3的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。