Python数据分析模块 | pandas做数据分析(三):统计相关函数

计算操作

1、pandas.series.value_counts

Series.value_counts(normalize=False,sort=True,ascending=False, bins=None, dropna=True)

作用:返回一个包含值和该值出现次数的Series对象,次序按照出现的频率由高到低排序.

参数: normalize : 布尔值,默认为False,如果是True的话,就会包含该值出现次数的频率. sort : 布尔值,默认为True.排序控制. ascending : 布尔值,默认为False,以升序排序 bins : integer, optional Rather than count values, group them into half-open bins, a convenience for pd.cut, only works with numeric data dropna : 布尔型,默认为True,表示不包括NaN

2.pandas.DataFrame.count

DataFrame.count(axis=0, level=None, numeric_only=False) Return Series with number of non-NA/null observations over requested axis. Works with non-floating point data as well (detects NaN and None)

Parameters: axis : {0 or ‘index’, 1 or ‘columns’}, default 0 0 or ‘index’ for row-wise, 1 or ‘columns’ for column-wise level : int or level name, default None If the axis is a MultiIndex (hierarchical), count along a particular level, collapsing into a DataFrame numeric_only : boolean, default False Include only float, int, boolean data Returns: count : Series (or DataFrame if level specified)

最大最小值

标准统计函数

pandas.dataframe.sum

返回指定轴上值的和.

DataFrame.sum(axis=None, skipna=None, level=None, numeric_only=None, **kwargs)

参数: 
axis : {index (0), columns (1)} 
skipna : 布尔值,默认为True.表示跳过NaN值.如果整行/列都是NaN,那么结果也就是NaN 
level : int or level name, default None 
If the axis is a MultiIndex (hierarchical), count along a particular level, collapsing into a Series 
numeric_only : boolean, default None 
Include only float, int, boolean columns. If None, will attempt to use everything, then use only numeric data. Not implemented for Series. 
Returns: 
sum : Series or DataFrame (if level specified)
import numpy as np
import pandas as pd 
df=pd.DataFrame(data=[[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("df:") 
print(df)
#直接使用sum()方法,返回一个列求和的Series,自动跳过NaN值
print("df.sum()")
 print(df.sum())
#当轴为1.就会按行求和
print("df.sum(axis=1)") 
print(df.sum(axis=1))
#选择skipna=False可以禁用跳过Nan值
print("df.sum(axis=1,skipna=False):") 
print(df.sum(axis=1,skipna=False))

结果:

2、pandas.dataframe.mean

返回指定轴上值的平均数.

DataFrame.mean(axis=None,skipna=None,level=None,numeric_only=None, **kwargs)

参数: axis : {index (0), columns (1)} skipna :布尔值,默认为True.表示跳过NaN值.如果整行/列都是NaN,那么结果也就是NaN level : int or level name, default None If the axis is a MultiIndex (hierarchical), count along a particular level, collapsing into a Series numeric_only : boolean, default None Include only float, int, boolean columns. If None, will attempt to use everything, then use only numeric data. Not implemented for Series.

例子:

import numpy as np
import pandas as pd 
df=pd.DataFrame(data=[[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("df:") 
print(df)
#直接使用mean()方法,返回一个列求平均数的Series,自动跳过NaN值
print("df.mean()") 
print(df.mean())
#当轴为1.就会按行求平均数
print("df.mean(axis=1)") 
print(df.mean(axis=1))
#选择skipna=False可以禁用跳过Nan值
print("df.mean(axis=1,skipna=False):")
 print(df.mean(axis=1,skipna=False))

结果:

排序

1、pandas.dataframe.sort_values

DataFrame.sort_values(by,axis=0,ascending=True,inplace=False, kind='quicksort', na_position='last')

Sort by the values along either axis

参数: by : str or list of str Name or list of names which refer to the axis items. axis : {0 or ‘index’, 1 or ‘columns’}, default 0 Axis to direct sorting ascending : bool or list of bool, default True Sort ascending vs. descending. Specify list for multiple sort orders. If this is a list of bools, must match the length of the by. inplace : bool, default False if True, perform operation in-place kind : {‘quicksort’, ‘mergesort’, ‘heapsort’}, default ‘quicksort’ Choice of sorting algorithm. See also ndarray.np.sort for more information. mergesort is the only stable algorithm. For DataFrames, this option is only applied when sorting on a single column or label. na_position : {‘first’, ‘last’}, default ‘last’ first puts NaNs at the beginning, last puts NaNs at the end Returns: sorted_obj : DataFrame

原文发布于微信公众号 - 人工智能LeadAI(atleadai)

原文发表时间:2017-12-18

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏决胜机器学习

PHP数据结构(八) ——赫夫曼树实现字符串编解码(实践1)

PHP数据结构(八)——赫夫曼树实现字符串编解码(实践1) (原创内容,转载请注明来源,谢谢) 公众号规定不能超过3000字,只能分两篇,见谅。 ...

34012
来自专栏nummy

Python数据科学手册(三)【Pandas的对象介绍】

Pandas构建在Numpy的基础上,它同时支持行和列的操作。 使用pip进行安装:

513
来自专栏算法channel

玩转Pandas,让数据处理更easy系列1

Series 是pandas两大数据结构中(DataFrame,Series)的一种,我们先从Series的定义说起,Series是一种类似于一维数组的对象,它...

1202
来自专栏猿人谷

A+B for Matrices 及 C++ transform的用法

题目大意:给定两个矩阵,矩阵的最大大小是M*N(小于等于10),矩阵元素的值的绝对值小于等于100,求矩阵相加后全0的行以及列数。 1 #include<io...

2009
来自专栏Danny的专栏

设计模式奠基石——UML关系转化为代码

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/huyuyang6688/article/...

1683
来自专栏小小挖掘机

Pandas常用的数据处理方法

本文的Pandas知识点包括: 1、合并数据集 2、重塑和轴向旋转 3、数据转换 4、数据聚合 1、合并数据集 Pandas中合并数据集有多种方式,这里我们来逐...

4539
来自专栏nummy

Python数据科学手册(四)【Pandas 索引和选择】

前面我们介绍了Numpy的索引和选择操作,Pandas也具有类似的操作,这节我们将介绍Pandas对象的索引和选择操作。

673
来自专栏SeanCheney的专栏

《利用Python进行数据分析·第2版》第8章 数据规整:聚合、合并和重塑8.1 层次化索引8.2 合并数据集8.3 重塑和轴向旋转8.4 总结

在许多应用中,数据可能分散在许多文件或数据库中,存储的形式也不利于分析。本章关注可以聚合、合并、重塑数据的方法。 首先,我会介绍pandas的层次化索引,它广泛...

5619
来自专栏李智的专栏

pandas多表操作,groupby,时间操作

使用场景:有两张表left和right,一般要求它们的表格结构一致,数据量也一致,使用right的数据去填补left的数据缺漏 如果在同一位置left与ri...

951
来自专栏闪电gogogo的专栏

Numpy&Pandas

Numpy & Pandas 简介 此篇笔记参考来源为《莫烦Python》 运算速度快:numpy 和 pandas 都是采用 C 语言编写, pandas 又...

3149

扫码关注云+社区