數組的統計方法 和 布爾類型的數組的方法


數組統計方法

幾個主要的函數:

Sum,mean,min,max,argmin,argmax(分別為最大和最小元素的索引)cumsum(所有元素的累積和)cumprod(所有元素的累積積

sum:返回數組的元素的和

mean:返回數組的平均值

max:返回數組的最大值

min:返回數組的最小值

argmax:返回最大值的索引

argmin:返回最小值的索引

cumsum:所有元素的累積和

cumprod:所有元素的累積積

所有的函數當axis=0時.是對每一列進行操作,當axis=1時,對每一行進行操作

1.max函數

import numpy as np

arr = np.arange(5,21).reshape(4,4)

 

Out:
array([[ 5, 6, 7, 8],
[ 9, 10, 11, 12],
[13, 14, 15, 16],
[17, 18, 19, 20]])

 

arr.max()      返回數組中的最大值
Out[78]: 20

 

arr.max(axis=0)     返回每一列的最大值

Out[80]: array([17, 18, 19, 20])

 

arr.max(axis=1)        返回每一行的最大值

Out[83]: array([ 8, 12, 16, 20])

 

2.cumsum函數

1)不加任何參數

形成一維數組,每個元素等於前面所有元素之和
arr
Out[86]:
array([[ 5, 6, 7, 8],
[ 9, 10, 11, 12],
[13, 14, 15, 16],
[17, 18, 19, 20]])

arr.cumsum()
Out[84]:
array([ 5, 11, 18, 26, 35, 45, 56, 68, 81, 95, 110, 126, 143,
161, 180, 200], dtype=int32)

2)axis=0時

每一列從上到下逐漸累加

arr.cumsum(axis=0)
Out[87]:
array([[ 5, 6, 7, 8],
[14, 16, 18, 20],
[27, 30, 33, 36],
[44, 48, 52, 56]], dtype=int32)

 

3)axis=1時

每一行從左到右逐漸累加

Out[88]:
array([[ 5, 11, 18, 26],
[ 9, 19, 30, 42],
[13, 27, 42, 58],
[17, 35, 54, 74]], dtype=int32)

 

 

布爾類型數組的方法

arr=np.arange(12).reshape(3,4)

In [4]: arr

Out[4]: 

array([[ 0, 1, 2, 3],

[ 4, 5, 6, 7],

[ 8, 9, 10, 11]])

bioom = (arr>5)

bloom
Out[99]:
array([[False, False, False, False],
[False, False, True, True],
[ True, True, True, True]], dtype=bool)

 

Score=np.array([[60,65,30,76],[56,78,98,34],[55,63,76,34],[78,90,45,66],[55,89,99,70],[55,45,89,77]])

Name=np.array(['Mr.Lin','Miss Fang','Mr.Tian','Miss Fang','Mr.Lin','Mr.Tian'])

In [42]: Name=='Mr.Lin'

Out[42]: array([ True, False, False, False, True, False], dtype=bool)

In [44]: Score[Name=='Mr.Lin'] #這里的角碼是一個布爾型列表,程序自動檢索里面的bool值,自動選取“Ture”布爾值。然后把“True”布爾值轉化為行號值,按行號選取數組行。

Out[44]: 

array([[60, 65, 30, 76],

[55, 89, 99, 70]])

In [45]: #這就是一個簡單Python數據庫查詢程序,可以說比任何程序的代碼都簡單。

布爾數組的sum方法:

返回所有元素的和

bloom.sum()

Out[102]: 6

布爾數組的any方法:

檢驗數組里有沒有true,如果有一個ture,則返回true

bloom.any()
Out[106]: True

布爾數組的all方法:

檢驗數組是不是全都是true,只有在全都是true的情況下才返回true

bloom.all()
Out[107]: False

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM