Python常用模組(一)Numpy

2021-08-21 15:29:00 字數 1926 閱讀 2725

arr=np.array(list,tuple) #一維二維都可建立;

np.zeros((3,3))   #建立全零陣列;

np.ones((3,3)) #建立全一陣列;

np.empty() #建立未初始化陣列;

np.arange(a,b,c) # [a,b)  c為步長可有可無,沒有預設為1;

np.linspace(0,10,5) #建立乙個等差數列,元素個數是5,從0開始計算,10為等差數列的終值;

np.logspace(0,2,5) #建立乙個等比數列,0表示10的0次方,2表示10的2次方,5為最終生成的元素個數;

np.random.random(4,2,3) #建立4個2行3列的陣列。實際上是三維的:2,3各一維,4看作乙個整體,算是一維。

np.random.ran(9) #建立9個0到1的隨機值

np.random.randn(3,3) #正態分佈

np.random.randint(1,9,(3,3)) #建立乙個3*3的陣列,陣列元素為1到9之間的隨機整數(int)

arr.ndim #陣列軸  的個數,也叫軼/維度

arr.shape #陣列的維度

reshape 可以修改陣列形狀  -1代表自動分配   

arr.size #元素個數

arr.dtype #元素的資料型別

arr.itemsize #陣列中每個元素的位元組大小

陣列與標量:

陣列的全部元素都會參與跟這個標量之間的運算:+ - * / 冪運算 。

陣列與陣列:

也叫廣播,兩個陣列對應維度的行與行,列與列發生運算,與矩陣不同。2*2的與2*2的就是對應運算,而2*3與1*3就是把後者跟前者的行與列分別對應運算,也就是1跟2的兩行都運算,共兩次,生成新的陣列維度依然是2*3。

arr[3][1][2]  #第三個陣列的第二行的第三列(也可以說是第三個)元素;

arr[1][0][1:3]  #切片就是檢視很多元素,切片的目的在於每個維度取值或檢視元素的範圍的限定;還可以利用切片修改列表的元素值;

arr[np.ix_([0,3,5],[0,2,3])] #使用索引器分別獲取0,3,5行的0,2,3列;

arr[[0,3,5],[0,2,3]] # 獲取(0,0),(3,2),(5,3)的位置處的元素值;

import numpy as np

names=np.array(['joe','tom','anne'])

scores=np.array([

[70,80,90],

[77,88,91],

[80,90,70]

])classes=np.array(['語文','數學','英語'])

arr.transpose(1,2,0) #軸對換  不是很懂,以後遇到的話再研究

np.tile(arr,2) #橫向拉伸兩倍

np.tile(arr,(3,1))  #縱向拉伸3倍,橫向拉伸1倍

np.stack(axis=1,2 預設為0)  #axis=0相當於從第一行往下依次新增,axis=1相當於從第一列從左往右新增,axis=2相當於矩陣的轉置

np.hstack((arr1,arr2)) #橫向合併

np.vstack((arr1,arr2)) #縱向合併

amin()  amax() mean() #平均值   |可由此計算方差、標準差、方差;

np.where(condition,arr1,arr2) #滿足condition取出arr1的滿足條件的元素,反之取arr2的元素;

np.unique(目標陣列) #去重。

一元/二元函式有表可查詢。

python常用模組(一)

os 模組提供對作業系統進行呼叫的介面 print list os.walk mnt topdown false 輸出 mnt dira dirb file1 file2 mnt dira file test a mnt dirb file test b top 是你所要遍歷的目錄的位址,返回的是乙...

python 常用模組

1.告訴直譯器 找模組 import sysunix要絕度路徑 只有第一次匯入執行。name main 2.當做包,必須包含乙個命名為 init py的檔案 模組 3.dir看模組裡有什麼 下劃線開始,不是給模組外部用的。過濾 import copy n for n in dir copy if n...

python常用模組

logging 日誌是我們排查問題的關鍵利器,寫好日誌記錄,當我們發生問題時,可以快速定位 範圍進行修改 logging將日誌列印到螢幕,日誌級別大小關係為 critical error warning info debug notset,當然也可以自己定義日誌級別 預設logging預設的日誌級別...