numpy的函式(二)

2022-06-29 21:39:08 字數 2928 閱讀 4031

函式說明

np.any()

是否有乙個元素為true

np.all()

是否所有元素為true

#

numpy的常用bool函式

deffunction1():

arr = np.array([1, 0, 2, 4])

#true

print

(np.any(arr))

#false

print(np.all(arr))

函式說明

np.diag(array)

以一維陣列的形式返回方陣的對角線(或非對角線)元素

np.diag([x,y,…])

將一維陣列轉化為方陣陣列(非對角線元素為0),型別還是陣列

np.dot(ndarray, ndarray)

陣列相乘

np.trace(ndarray)

計算陣列對角線元素的和

np.mat / matrix

建立矩陣

np.bmat(array)

陣列變矩陣

matrix.h(matrix為矩陣物件)

求共軛轉置,實部不變,虛部相反

matrix.i

求逆矩陣(可逆矩陣,不能是奇異矩陣)

matrix.t

求矩陣的轉置

#

numpy的常用矩陣函式

deffunction2():

#新建一維陣列

arr = np.array([1, 2, 3, 4])

#以一維陣列元素為對角線,其他元素為0,構建二維方陣陣列

#[[1 0 0 0]

#[0 2 0 0]

#[0 0 3 0]

#[0 0 0 4]]

arr1 =np.diag(arr)

print(type(arr1), "

方陣陣列\n

", arr1)

#陣列轉換成矩陣

#[[1 0 0 0]

#[0 2 0 0]

#[0 0 3 0]

#[0 0 0 4]]

rec1 =np.bmat(arr1)

print(type(rec1), "

方陣\n

", rec1)

#建立矩陣

#[[5, 6]

#[7, 8]]

rec = np.mat([[5, 6], [7, 8]])

#求矩陣的對角線元素和,跡 = a11 + a22 + ... + ann

#13 = 5 + 8

print("

矩陣的跡:

", np.trace(rec))

#求共軛轉置,實部不變,虛部相反

#[[5 7]

#[6 8]]

print("

共軛轉置矩陣:\n

", rec.h)

#求逆矩陣,前提是非奇異矩陣

#[[-4. 3. ]

#[ 3.5 -2.5]]

print("

逆矩陣:\n

", rec.i)

函式說明

np.sort(ndarray)

排序,返回副本,預設公升序

-np.sort(-ndarray)

降序排序,先取反排序,再結果取反

np.argsort(ndarray)

返回排序後的下標值

#

numpy常用的排序函式

deffunction3():

arr = np.array([5, 3, 4, 1, 7, 9, 6, 2])

#[1 2 3 4 5 6 7 9]

print("

公升序:"

, np.sort(arr))

#[9 7 6 5 4 3 2 1]

print("

降序:", -np.sort(-arr))

#[3 7 1 2 0 6 4 5]

#如第乙個位置內容為3,這個公升序排序中元素 1 最小,而 1 元素在排序前的索引為 3

#同理第二個位置是7,這個排序中第二小的為 2,而 2 元素在原序列的索引為 7

print("

公升序索引:

", np.argsort(arr))

函式說明

unique(x)

計算x中的唯一元素,並返回有序結果

intersectd(x, y)

計算x和y中的公共元素,並返回有序結果

union1d(x, y)

計算x和y中的並集,並返回有序結果

in1d(x, y)

得到乙個表示「x的元素是否包含於y」的布林型陣列

setdiff1d(x, y)

集合的差,即元素在x中且不在y中

setxor1d(x, y)

集合的對稱差,即存在於乙個陣列中但不同時存在與兩個陣列中的元素

#

numpy常用的其他函式

deffunction4():

arr1 =np.array([

[2, 1, 4, 2],

[7, 1, 6, 4]

])arr2 =np.array([

[1, 2, 3, 4],

[1, 3, 5, 8]

])#去掉陣列相同元素,並返回有序結果

#[1 2 4 6 7]

print

(np.unique(arr1))

#交集,即arr1與arr2都存在的共同元素

#[1 2 4]

print

(np.intersect1d(arr1, arr2))

#差集,arr1中存在,且arr2中不存在的元素

#[6 7]

print(np.setdiff1d(arr1, arr2))

numpy的函式講解

邊學邊記 1 numpy對矩陣的處理很強大,少用list,多使用array np.array x 將輸入資料轉化為乙個型別為type的ndarray np.asarray array 將輸入資料轉化為乙個新的ndarray np.array 與np.asarray 區別 當資料來源是ndarray時...

numpy 的通用函式

csv,comma separate values,是逗號分隔檔案的縮寫,是一種儲存資料的純文字格式,通常用於儲存電子 或資料庫軟體 特點每條記錄佔一行 以逗號為分隔符 逗號前後的空格會被忽略 參考 csv是什麼檔案格式 loadtxt函式解析csv檔案 loadtxt 檔名,分隔符,usecols...

numpy 的各種函式

在指定的間隔內返回均勻間隔的數字。返回num均勻分布的樣本,在 start,stop 這個區間的端點可以任意的被排除在外。example np.linspace 2.0,3.0,num 5 array 2.2.25,2.5 2.75,3.np.linspace 2.0,3.0,num 5,endpo...