描述性统计的概述与计算

pandas对象有一个强大的数学、统计方法集合,大部分属于归约、汇总统计的类别,这些方法从DataFrame的行或列中抽取一个Series或一系列的单个值,同时还内建了处理缺失值的功能

下面是一些函数使用的例子,包括归约方法和积累型方法:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
frame = pd.DataFrame([[1.4,np.nan],[7.1,-4.5],[np.nan,np.nan],[0.75,-1.3]],index=['a','b','c','d'],columns=['one','two'])
print(frame) ==>
one two
a 1.40 NaN
b 7.10 -4.5
c NaN NaN
d 0.75 -1.3
print(frame.sum()) ==>
one 9.25
two -5.80
dtype: float64
print(frame.sum(axis='columns')) ==>
a 1.40
b 2.60
c 0.00
d -0.55
dtype: float64
print(frame.idxmax()) ==>
one b
two d
dtype: object
print(frame.describe()) ==>
one two
count 3.000000 2.000000
mean 3.083333 -2.900000
std 3.493685 2.262742
min 0.750000 -4.500000
25% 1.075000 -3.700000
50% 1.400000 -2.900000
75% 4.250000 -2.100000
max 7.100000 -1.300000

下面是相关的一些方法:

唯一值、计数和成员属性

一些相关方法可以从一维Series包含的数值中提取信息

下面的unique代表找出唯一值,value_counts返回其中包含各个值的个数,isin会执行向量化的成员检查,返回布尔类型

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
obj = pd.Series(['c','a','d','a','a','b','b','c','c'])
print(obj) ==>
0 c
1 a
2 d
3 a
4 a
5 b
6 b
7 c
8 c
dtype: object
print(obj.unique()) ==>
['c' 'a' 'd' 'b']
print(obj.value_counts()) ==>
c 3
a 3
b 2
d 1
dtype: int64
print(obj.isin(['b','c'])) ==>
0 True
1 False
2 False
3 False
4 False
5 True
6 True
7 True
8 True
dtype: bool

下面是一些成员属性方法的参考:

Author: YihangBao
Link: https://roarboil.github.io/2019/09/12/detaildescribe/
Copyright Notice: All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.