numpy 的屬性: shape(陣列維度的元組)、ndim(陣列維數)、size(陣列元素數量)、itemsie(乙個陣列元素的長度位元組)、dtype(元素型別)
建立陣列指定型別:
np.array([1.1,2.2,3.3], dtype = 『float32』)
3.3.1生成陣列
生成0和1
np.zeros(shape=[ , ], dtype=" ")
np.ones(shape)
從現有陣列中生成
np.array() 深拷貝
np.copy() 深拷貝
np.asarray() 淺拷貝
生成固定範圍的陣列
np.linspace(0, 10, 100) 生成[0,10] 等距100個元素
np.arange(a, b, c) 生成[a, b) c是步長
生成隨機數組
np.random模組
均勻分布:每組可能性相等
np.random.rand(d0,d1,…,dn):返回[0.0, 1.0)內的一組均勻分布的數。
np.random.uniform(low=0.0,high=1.0,size=none)
low:取樣下界,float,預設0
high:上界,float,預設1
size:輸出樣本數目,為int或tuple元組型別,例如,size=(m,n,k),則輸出mnk個樣本,預設時輸出1個值
返回值:ndarray型別,其形狀和引數size中描述一直
np.random.randint(low, high=none,size=none, dtype=『i』):從乙個均勻分布中隨機取樣,生成乙個整數或n維陣列,取數范文:若high不none時,取lowhigh之間隨機整數,否則取0low之間隨機整數
正態分佈:概率分布。μ=0,thegma=1時標準正態分佈
np.random.normal(loc=0.0, scale=1.0,size=none)
loc:float 此概率分布均值
scale:float 此概率分布的標準差,對應分布寬度,scale越大越矮胖,越小越瘦高
size:int or tuple of ints,輸出的shape,預設為none,只輸出乙個值
np.random.standard_normal(size = none)
返回指定形狀的標準正態分佈的陣列。
3.3.2陣列的索引切片
3.3.3形狀修改
ndarray.reshape() 返回新的adarray,原始資料沒有改
adarray.resize(shape) 沒有返回值,對原始ndarray進行了修改
ndarray.t 轉置,行變列,列變行
3.3.4型別修改
ndarray.astype(type)
ndarray.astype(「int32」)
ndarray序列化到本地
ndarray.tostring()
3.3.5陣列去重
ndarray.unique()
不能直接用set函式,如果要用,可先用flatten函式拍扁為一維再使用。如圖
ndarray運算
邏輯運算
布林索引
例:通用判斷函式
np.all(布林值)
只要有乙個false就返回false,只有全是true才返回true
np.any()
只要有乙個true就返回true,只有全是false才返回false
三元運算子np.where
np.where(布林值,true位置的值,false位置的值)
統計運算
統計指標函式
min, max, mean, median, var, std(標準差)
np.函式名
axis=1和axis=-1是一樣的索引,不同庫可能不同,最保險還是都試一試
返回最大值、最小值所在位置
np.argmax()
np.armin()
陣列間運算
場景:計算學生平時成績和期末成績求出最終成績
陣列與數的運算
陣列與陣列的運算
廣播機制:執行broadcast的前提在於,兩個ndarray執行的是element-wise的運算,broadcast機制的功能是為了方便不同形狀的ndarray(numpy庫的核心資料結構)進行數**算
當操作兩個陣列時,numpy會諸葛比較他們的shape,只有在維度相等,shape(其中相對應的乙個地方為1)時才能夠進行陣列與陣列的運算。例如
矩陣運算
兩種方法儲存矩陣
1.ndarray 二維陣列
np.matmul()
np.dot()
data_arry @ weights
2.matrix
data_mat * wights_mat
矩陣的乘法運算:
形狀:(m, n)*(n, l) = (m, l)
合併、分割:
合併:np.hstack() 水平拼接
np.vstack()豎直拼接
np.concatenate():即可水平拼接也可豎直拼接
分割:numpy.split(ary, indices_or_section, axis=0) split an array into multiple sub_arrays
io操作和資料處理
numpy讀取:np.genfromtxt(』****.csv』, delimiter=",")
存在缺失值nan一般不用numpy讀取。
如何處理缺失值:
1.直接刪除含有缺失值樣本資料
2.替換或插補法,樣本資料少時,可以按列算平均值來替換
處理邏輯:
學習筆記 雜湊學習筆記
hash基本原理 hash就是乙個像函式一樣的東西,你放進去乙個值,它給你輸出來乙個值。輸出的值就是hash值。一般hash值會比原來的值更好儲存 更小 或比較。那字串hash就非常好理解了。就是把字串轉換成乙個整數的函式。而且要盡量做到使字串對應唯一的hash值。它的主要思路是選取恰當的進製,可以...
學習筆記 CentOS 學習筆記01
簡單的做個課堂筆記 虛擬機器用的是vmware,系統是centos cd etc sysconfig network scripts pwdls 顯示列表 cat ifcfg eth0 檢視檔案內容 vi ifcfg eth0 進入vi編輯器 onboot no 原始設定 x逐字刪除 d刪除整行 a...
筆記 spring cloud 學習筆記
1 spring cloud 是什麼 spring cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具 例如配置管理,服務發現,斷路器,智慧型路由,微 控制匯流排 分布式系統的協調導致了樣板模式,使用spring cloud開發人員可以快速地支援實現這些模式的服務和應用程式。他們將在任...