数据计算 目录
常用函数
分组统计函数
按不同时期统计数据的函数
常用函数 求和函数 1 DataFrame.sum (axis=None , skipna=None , level=None , numeric_only=None , min_count=0 , **kwargs)
axis: axis=0表示按行对所有列求和,axis=1表示按列对所有行求和;
skipna: 布尔型,表示计算结果是否排除NaN/Null值;
level: 索引层级;
min_count: 表示执行操作所需的数目,整型,默认值为0。
常见形式:
求均值函数 1 DataFrame.mean(axis=None , skipna=None , level=None , numeric_only=None , min_count=0 , **kwargs)
常见形式:
df.mean()
df.mean(axis=1)
求最大值函数 1 DataFrame.max (axis=None , skipna=None , level=None , numeric_only=None , min_count=0 , **kwargs)
常见形式:
求最小值函数 1 DataFrame.min (axis=None , skipna=None , level=None , numeric_only=None , min_count=0 , **kwargs)
常见形式:
求中位数函数 1 DataFrame.median(axis=None , skipna=None , level=None , numeric_only=None , min_count=0 , **kwargs)
常见形式:
df.median()
df.median(axis=1)
求众数函数 1 DataFrame.mode(axis=None , skipna=None , level=None , numeric_only=None , min_count=0 , **kwargs)
常见形式:
df.mode()
df.mode(axis=1)
求方差函数 1 DataFrame.var(axis=None , skipna=None , level=None , numeric_only=None , min_count=0 , **kwargs)
常见形式:
求标准差函数 1 DataFrame.std(axis=None , skipna=None , level=None , numeric_only=None , min_count=0 , **kwargs)
常见形式:
求分位数函数 1 DataFrame.quantile(q=0.5 , axis=None , numeric_only=None , interpolation='linear' )
q:浮点型或数组,分位点,值域[0,1]
interpolation=’linear’: 内插值,不懂,也很难用到。
常见形式:
df.quantile(0.35)
df.quantitle(axis=1)
分组统计函数 分组统计函数 1 DataFrame.groupby(by='' , axis=0 , level=None , as_index=True , sort=True , group_keys=True , squeeze=False , observed=False )
一般只需用到by=’’
简单应用
1 2 3 4 5 6 7 df1 = df1.groupby(by='column_name' ).sum () df1 = df1.groupby('column_name' ).sum () df1 = df1.groupby(['column1_name' , 'column2_name' ]).sum () df1 = df1.groupby('groupby_name' )['sum_name' ].sum ()
高级应用
1 2 3 4 5 6 7 8 9 10 df1 = df1['column1' ,'column2' ,'column3' ]for name, group in df1.groupby('column1' ): print (name) print (group) for (key1,key2), group in df1.groupby(['column1' ,'column' ]): print (key1,key2) print (group)
1 2 3 4 df1 = df1.['column1' ,'column2' ,'column3' ] group_cal1 = df1.groupby('column1' ).agg(['mean' ,'sum' ]) group_cal2 = df1.groupby('column1' ).agg({'column2' :['mean' ,'sum' ],'column3' :['sum' ]})
与字典结合的分组函数
1 2 3 4 dic1 = {'column1' :'ha' , 'column2' :'ha' , 'column3' :'he' } df1 = df1.groupby(dic1,axis=1 ).sum ()
时期统计函数 按时期统计数据 前提:将日期设置为索引,且日期格式为日期型
按年统计数据 df1= df1.resample(‘AS’).sum()
按季度统计数据 df1 = df1.resample(‘Q’).sum()
按月份统计数据 df1 = df1.resample(‘M’).sum()
按星期统计函数 df1 = df1.resample(‘W’).sum()
按天统计函数 df1 = df1.resample(‘D’).sum()
按时期统计数据后并将日期转换为相对应的格式 前提:将日期设置为索引,且日期格式为日期型
按年统计数据 df1= df1.resample(‘AS’).sum().to_period(‘AS’)
按季度统计数据 df1 = df1.resample(‘Q’).sum().to_period(‘Q’)
按月份统计数据 df1 = df1.resample(‘M’).sum().to_period(‘M’)
按星期统计函数 df1 = df1.resample(‘W’).sum().to_period(‘W’)
按天统计函数 df1 = df1.resample(‘D’).sum().to_period(‘D’)