Python3 一些小函式的筆記

2021-08-13 04:56:41 字數 2766 閱讀 7981

去掉列表最後一列

參考範數)

np.linalg

.norm((ytestwineqmodel.predict(xtest)),2)/sqrt(len(ytest)) norm範數

矩陣的各種範數

(參考

1. n = norm(a,1) %求a的列範數,等於a的列向量的1-範數的最大值。

2. n = norm(a,2) %求a的歐幾里德範數,和norm(a)相同。

3. n = norm(a,inf) %求行範數,等於a的行向量的1-範數的最大值即:max(sum(abs(a』)))。

4. n = norm(a, 『fro』 ) %求矩陣a的frobenius範數,矩陣元p階範數估計需要自己程式設計求,

1. 1-範數:,列和範數,即所有矩陣列向量絕對值之和的最大值,matlab呼叫函式norm(a,1)。

2. 2-範數:,譜範數,即a』a矩陣的最大特徵值的開平方。matlab呼叫函式norm(x,2)。

3. ∞-範數:,行和範數,即所有矩陣行向量絕對值之和的最大值,matlab呼叫函式norm(a,inf)。

4. f-範數:,frobenius範數,即矩陣元素絕對值的平方和再開平方,matlab呼叫函式norm(a,』fro『)。

例子 (1) 1範數 norm(a,1)=max(sum(abs(a)))

a=[1

23;4

56;789]

a = 123

4567

89norm(a,1)

ans =

18>> sum(abs(a))

ans =

121518

>> max(ans)

ans =

18

(2)2範數

>> norm(a)

ans =

16.8481

>> norm(a,2)

ans =

16.8481

[v s]=eig(a'*a)

v = -0.4082 -0.7767 0.4797

0.8165 -0.0757 0.5724

-0.4082 0.6253 0.6651

s = 0.0000 0 0

0 1.1414 0

0 0 283.8586

>> sqrt(s)

ans =

0.0000 0 0

0 1.0684 0

0 0 16.8481

(3)∞-範數 norm(a,inf)=max(sum(abs(a),2))

norm(a,inf)

ans =

24sum(abs(a),2)

ans =

61524

(4) f-範數 norm(a,』fro』)=sqrt(sum(sum(abs(a).^2)))

norm(a,'fro')

ans =

16.8819

>> sum(sum(abs(a).^2))

ans =

285>> sqrt(ans)

ans =

16.8819

思路:numpy提供了numpy.concatenate((a1,a2,…), axis=0)函式。能夠一次完成多個陣列的拼接。其中a1,a2,…是陣列型別的引數

1.

>>> a=np.array([1,2,3])

>>> b=np.array([11,22,33])

>>> c=np.array([44,55,66])

>>> np.concatenate((a,b,c),axis=0) # 預設情況下,axis=0可以不寫

array([ 1, 2, 3, 11, 22, 33, 44, 55, 66])

#對於一維陣列拼接,axis的值不影響最後的結果

2.>>> a=np.array([[1,2,3],[4,5,6]])

>>> b=np.array([[11,21,31],[7,8,9]])

>>> np.concatenate((a,b),axis=0)

array([[ 1, 2, 3],

[ 4, 5, 6],

[11, 21, 31],

[ 7, 8, 9]])

3.>>> np.concatenate((a,b),axis=1)

#axis=1表示對應行的陣列進行拼接

array([[ 1, 2, 3, 11, 21, 31],

[ 4, 5, 6, 7, 8, 9]])

abs()是乙個內建函式,而fabs()在math模組中定義。

fabs()函式只適用於float和integer型別,而abs()也適用於複數。

np.argsort 返回索引陣列

list中可以 list.index

idxtemp = np.argsort(featureimportance)[:

:-1]

#逆向 ,就是把這個反過來

print('idxtemp',idxtemp)

python3的一些小案例

coding utf 8 print 例項 print 兩數之和為 1f float input 輸入第乙個數字 float input 輸入第二個數字 import random 匯入 隨機數模組 print random.randint 0,9 生成0 9的隨機數,包含生成數目標在內import...

python3 的一些筆記

因為使用python越來越頻繁,有一些細節的東西經常用後一段時間沒去用就會忘記,做些簡單的筆記吧。a 0 while 1 a 1 if a 3 0 print aa else print bb continue 後面的全部不執行了 pass 似乎沒影響,cc也會出來 break 直接結束迴圈 pri...

python 3 中 str 的一些內建函式

len 返回字串的長度 s 123456789 len s 9lstrip 刪除字串開頭的空格或者是指定的字元 s 123 s.lstrip 123 rstrip 刪除字串末尾的空格或者是指定的字元 s 123 s.rstrip 123 如果是指定的字元的話就需要在函式後面的口號裡面加上指定的字元即...