numpy之陣列計算

2022-01-22 14:28:26 字數 2217 閱讀 1451

# coding=utf-8

import numpy as np

import random

#

陣列和數字計算,進行廣播計算,包括加減乘除

t8 = t8 +2

print

(t8,t8.dtype,t8.shape)

#陣列和陣列計算,只要在某一維度(行或列)一樣,就可以進行廣播計算,包括加減乘除

t9 = t5+t6

print

(t9,t9.dtype,t9.shape)

'''如果兩個陣列的後緣維度(即從末尾開始算起的維度)的軸長度相符或其中一方的維度為1,則認為他們的是廣播相容的

例如 (3,3,3)與(3,2)不可以計算,因為(3, 3,3)最後兩個3,3與3,2不相符

(3,3,2)與(3,2)可以計算,因為從最後開始,存在相符維度即(3,2)

'''t7 = np.ones((3,3))

t10 = np.random.randint(10,20,(3,3,3))

print

(t10,t10.dtype,t10.shape)

t10 = t10 +t7

print

(t10,t10.dtype,t10.shape)

t10 = t10 -t7

print

(t10,t10.dtype,t10.shape)

t10 = t10.dot(t7)

print

(t10,t10.dtype,t10.shape)

t10 = t10/t7

print

(t10,t10.dtype,t10.shape)

#四維陣列

t10 = np.random.randint(10,20,(3,3,3,4))

print

(t10,t10.dtype,t10.shape)

###########其他計算方法###################

'''獲取最大值最小值的位置

np.argmax(t,axis=0) #每一行最大值位置

np.argmin(t,axis=1) #每一列最小值的位置

建立乙個全0的陣列: np.zeros((3,4))

建立乙個全1的陣列:np.ones((3,4))

建立乙個對角線為1的正方形陣列(方陣):np.eye(3)

''''''

rand(d0, d1, …, dn) 產生均勻分布的隨機數 dn為第n維資料的維度

randn(d0, d1, …, dn) 產生標準正態分佈隨機數 dn為第n維資料的維度

randint(low[, high, size, dtype]) 產生隨機整數 low:最小值;high:最大值;size:資料個數

uniform(low,high,(size)) 產生均勻分布的陣列,low起始值,high結束值,size形狀

normal(loc,scale,(size)) 從指定正太分布中隨機抽取樣本,分布中心為loc,標準差為scale,形狀為size

seed(s) 隨機數種子,s是給定的種子值,因為計算機生成的是偽隨機數,所以通過設定相同的隨機數種子,可以每次生成相同的隨機數

''''''

np.nan與np.nan不相等

np.count_nonzero(t)判斷t中不為0的數量

np.count_nonzero(np.isnan(t))判斷t中nan的數量

nan與任何值進行計算都為nan

求和:t.sum(axis=none)

均值:t.mean(a,axis=none) 受離群點的影響較大

中值:np.median(t,axis=none)

最大值:t.max(axis=none)

最小值:t.min(axis=none)

極值:np.ptp(t,axis=none) 即最大值和最小值只差

標準差:t.std(axis=none)

協方差: cov = np.cov(data.t) #計算協方差矩陣

計算矩陣的特徵值和特徵向量: eig_val, eig_vec = np.linalg.eig(data)#要求矩陣是方陣 

'''

注意點:

陣列中的屬性axis表示,以陣列的該行維度個數返回

NumPy 二 陣列的計算

import numpy as np data1 np.arange 9 reshape 3 3 print ndata1 n data1 data1 012 345 67 8 data3 data1 1print data3 123 456 78 9 data4 data1 1print data...

python OpenCV之numpy陣列操作

1.的表示與儲存 以矩陣的形式存在電腦裡,需要用到陣列操作來完成對影象的處理。np.ones size 可以建立任意維度的陣列,各個元素值均為1 23 np.zeros size,dtype 同上,但各個元素值為0.預設元素型別為浮點數使用示例 img np.zeros 256 256,3 np.u...

numpy之陣列運算

陣列之邏輯運算 可以直接對陣列進行邏輯判斷,會返回相應的bool型別陣列 通用判斷函式 三元運算子 陣列之統計運算陣列與數之間的運算 會作用到陣列中的每乙個元素上。陣列與陣列之間的運算 廣播機制 陣列在進行向量化運算時,要求陣列的形狀是相等的。當形狀不相等的陣列執行算術運算的時候,就會出現廣播機制,...