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預設的日誌級別...