python主要探索函数
在数据分析中,Python的主要探索函数
- Python中主要用于书探索的是pandas(数据分析)和matplotlib(数据可视化).其中pandas提供了大量的数据探索的工具与数据相关的函数,这些数据探索可大致分为统计特征函数与统计作图函数,而作图函数依赖于mayplotlib,所以往往又会跟matplotlib结合在一起使用
- 基本统计特征的函数:统计特征用于计算数据的均值,方差,标准差,分位数,相关系数和协方差等,这些统计特征能反映出数据的整体分布
- 方法名函数功能所属库
corr() 计算样本数据的Spearman(Pearson)相关系数矩阵 pandas cov() 计算样本数据的协方差矩阵 pandas describe() 给出样本的基本描述(基本统计量入均值,标准差等) pandas kurt() 样本值的峰度(四阶矩) pandas mean() 计算数据样本的算数平均数 pandas skew() 样本值的偏离(三阶矩) pandas std() 计算样本数据的标准差 pandas sum() 计算数据样本的总和(按列计算) pandas var() 计算样本数据的方差 pandas - sum()
- 功能:计算数据样本的总和(按列计算)
- 使用格式: D.sum() 按列计算样本D的总和,样本D可为DataFrame或者Series
- mean()
- 功能:计算数据样本的算数平均数
- 使用格式: D.mean()按列计算样本D的均值,样本D可为DataFrame或者Series
- var()
- 功能:计算样本数据的方差
- 使用格式: D.var(),按列计算样本D的均值,样本D可为DataFrame后者Series
- std()
- 功能:计算样本数据的标准差
- 使用格式:D.std() 按列计算样本D的均值,样本D可为ataFrame或者Series
- corr()
- 功能:计算样本数据的Spearman(Pearson)相关西湖矩阵
- 使用格式: D.corr(method="pearson"), 样本D可为DataFrame,返回相关系数矩阵,method参数为计算方法,支持pearson系数.kendalll系数,spearman系数
- S1.corr(S2,method="pearson") S1,S2均为Series,这种格式指定计算两个Series之间的相关系数
- cov()
- 功能:计算样本数据的协防方差矩阵
- 使用格式: D.cov()样本D可为DataFrame,返回协方差矩阵
- skew/kurt
- 功能:计算数据样本的偏度(三阶矩)/峰度(四阶矩)
- 使用格式 D.skew()/D.kurt() 计算样本D的偏度(三阶矩)/峰度(四阶矩).样本D可为DataFrame或Series
- describe()
- 功能:直接给出样本数据的一些基本的统计量,包括均值,标准差,最大值,最小值,分位数等.
- 使用格式: D.describe(),括号里可以带一些参数,比如percentiles = [0.2, 0.4, 0.6, 0.8].就是指定只计算0.2,0.4,0.6,0.8分位数,而不是默认的1/4, 1/2, 3/4分位数
拓展统计特征函数
- 除了上述的统计特征外,pandas还提供了一些非常方便的计算特征的函数,主要又累计计算(cum)和滚动计算(pd.rolling)
- 方法名函数功能所属库
cummax() 依次给出前1,2,3,..,个数的最大值. pandas cummin() 依次给出前1,2,3,...,个数的最小值 pandas cumprod() 依次给出1,2,3,...,n个数的积 pandas cumsum() 依次给出前1,2,3...,n个数的和 pandas - pandas累积统计特征函数
- 方法名函数功能所属库
rolling_sum() 计算数据样本的总和(按列计算) pandas rolling_mean() 数据样本的算术平均数 pandas rolling_var() 计算样本的方差 pandas rolling_std() 计算样本的标准差 pandas rolling_corr() 计算样本的Spearman(Pearson) pandas rolling_cov() 计算数据样本的协方差矩阵 pandas rolling_skew() 样本的偏度(三阶矩) pandas rolling_kurt() 样本值的峰度(四阶矩) pandas
统计作图函数
- 通过统计作图函数绘制的图表可以直观地反映出数据及统计量的性质机器内在的规律,如盒图恶意表示多个样本的均值.误差条形图能同时显示下限和上限误差,最小二乘拟合曲线图能分析两变量间的关系.
- Python主要统计作图函数
- 作图函数名作图函数功能所属工具箱
boxplot() 绘制样本数据的箱型图 Pandas hist() 绘制二维条形直方图,可显示数据的分配情况 Matplotlib/Pandas pie() 绘制饼型图 Matplotlib/Pandas plot() 绘制线性二维图,折线图 Matplotlib/Pandas plot(logy=True) 绘制y轴的对数图形 Pandas plot(yerr=error) 绘制误差条形图 Pandas - plot
- 功能:绘制线性二维图
- 使用格式: plt.plot(x,y,S)
- 这是Matplotlib通用的绘图方式,绘制y对于x(即以x为横轴的二维图形),字符串参量S指定绘制时图形的类型,样式和颜色,常用的选型有:"b"为蓝色,"r"为红色,"g"为绿色,"o"为圆圈,"+"为加号标记,"-"为实线,"–"为虚线,当x,y均为实数同维向量时,则描出点(x(i),y(i)),然后用直线依次相连
- D.plot(kind='box')
- 这里使用的是DataFrame或Series对象内置的方法作图,默认以Index为横坐标,没列数据为纵坐标自动作图,通过kind参数指定作图类型支持line(线)和area,pie(饼图)等,同时也能够接受plt.plot()中接受的参数.
- pie
- 功能:绘制饼型图
import matplotlib.pyplot as plt
import numpy as np
x = np.random.randn(1000) # 1000个服从正太分布的随机数
plt.hist(x, 10) # 分成10组进行绘制直方图
plt.show() - 使用格式: plt.pie(size),使用matplotlib绘制饼图,其中size是一个列表,记录各个扇形的比例
- 功能:绘制饼型图
- hist
- 功能:绘制二维条形直方图,可显示数据分布情形
- 使用格式: Plt.hist(x,y),其中,x是待绘制的直方图的一维数组,也可以是整数,表示均匀分为n组;也可以是列表,列表各个数字为分组的边界点(即手动指定分界点)
- boxplot
- 功能:绘制样本数据的箱型图
- 使用格式: D.boxplot()/D.plot(kind="box"),有两种比较简单的方式绘制D的箱型图,其中一种是直接调用DataFrame的boxplot()方法;另外一种是调用Series或者DataFrame的plot()方法,并用kind参数指定箱型图.其中,盒子的上,下四分位数和中值处于一条线段,箱型图末端延伸出去的直线成为须,表示盒外数据的长度.如果在须外没有数据,则在须的底部有一点,点的颜色相同.
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
import random
x = np.random.randn(1000) # 1000个服从正太分布
D = pd.DataFrame([x, x+1]).T # 构造两列的DataFrame
D.plot(kind="box") # 调用Series内置的作图方法画图,用kind参数指定箱型图box
plt.show()- plot(logx = True)/plot(logy = True)
- 功能:绘制x或y轴对的对数图形
- 使用格式: D.plot(logx = True) / D.plot(logy = True), 对x轴(y轴)使用对数刻度(以10为底),y轴(x轴)使用线性刻度,进行plot函数绘图,D为pandas的DataFrame或者Series
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['SimHei'] # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False # 用来正常显示负号
x = pd.Series(np.exp(np.arange(20))) # 原始数据
x.plot(label= u"原始数据图", legend=True)
plt.show()
x.plot(logy=True, label=u"对数数据图", legend=True)
plt.show()- plot(yerr= error)
- 功能:绘制误差条形图
- 使用格式: D.plot(yerr=error),绘制误差条形图,D为pandas的DataFrame或Series,代表着均值数据句列,而error则是误差列,次命令在y轴方向画出误差棒图,如果设置参数xerr=error,则在x轴方向画出误差棒图
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
plt.rcParams["font.sans-serif"] = ["SimHei"] # 用来正常显示中文标签
plt.rcParams["axes.unicode_minus"] = False # 用来正常显示负号 error = np.random.randn(10) # 定义误差列
y = pd.Series(np.sin(np.arange(10))) # 均值数据列
y.plot(yerr=error) # 绘制误差图
plt.show()
python主要探索函数的更多相关文章
- 【转】实习小记-python 内置函数__eq__函数引发的探索
[转]实习小记-python 内置函数__eq__函数引发的探索 乱写__eq__会发生啥?请看代码.. >>> class A: ... def __eq__(self, othe ...
- Python 动态创建函数【转】
知乎上也有相似的问题 偶然碰到一个问题,初想是通过动态创建Python函数的方式来解决,于是调研了动态创建Python函数的方法. 定义lambda函数 在Python中定义lambda函数的写法很简 ...
- python中的函数
Python 函数 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但你也 ...
- python高级之函数
python高级之函数 本节内容 函数的介绍 函数的创建 函数参数及返回值 LEGB作用域 特殊函数 函数式编程 1.函数的介绍 为什么要有函数?因为在平时写代码时,如果没有函数的话,那么将会出现很多 ...
- python内置函数
python内置函数 官方文档:点击 在这里我只列举一些常见的内置函数用法 1.abs()[求数字的绝对值] >>> abs(-13) 13 2.all() 判断所有集合元素都为真的 ...
- Python基础三. 函数、lambda、filter、map、reduce
一.概述 函数, 就是用一些语句组织起来实现一组特定的功能, 用来重复调用. 函数的作用及意义:最大化的重用代码和最小化的代码冗余以及对流程的分解. Python中有哪些函数: 内建的函数 第三方模块 ...
- Python 常用string函数
Python 常用string函数 字符串中字符大小写的变换 1. str.lower() //小写>>> 'SkatE'.lower()'skate' 2. str.upper ...
- python 内置函数和函数装饰器
python内置函数 1.数学相关 abs(x) 取x绝对值 divmode(x,y) 取x除以y的商和余数,常用做分页,返回商和余数组成一个元组 pow(x,y[,z]) 取x的y次方 ,等同于x ...
- Python 之匿名函数和偏函数
匿名函数与偏函数 匿名函数 Python允许使用lambda关键字创造匿名函数,lambda表达式用于定义匿名函数,它返回可调用的函数对象,语法如下: lambda arg1, arg2, … : e ...
随机推荐
- ES6 Generator使用
// generator介绍: function* hello() { console.log("hello world") } hello();//没有执行 // 直接调用hel ...
- jmeter添加自定义扩展函数之if判断
1,打开eclipse,新建maven工程,在pom中引用jmeter核心jar包,具体请看---https://www.cnblogs.com/guanyf/p/10863033.html---,这 ...
- appium常见问题03_appium脚本报错selenium.common.exceptions.WebDriverException
运行appium脚本时报错selenium.common.exceptions.WebDriverException...,如下截图: 该报错说明appium和app的内置chrome版本不一致 [解 ...
- 3403. 题解【NOIP2013模拟】数列变换 (Standard IO)
先看题目: Description 小X 看到堆成山的数列作业十分头疼,希望聪明的你来帮帮他.考虑数列A=[A1,A2,...,An],定义变换f(A,k)=[A2,A3,,,,.Ak,A1,Ak+2 ...
- The 13th Chinese Northeast Collegiate Programming Contest(B C E F H J)
B. Balanced Diet 思路:把每一块选C个产生的价值记录下来,然后从小到大枚举C. #include<bits/stdc++.h> using namespace std; ; ...
- <转>Excel生成guid、uuid
Excel生成guid.uuid 原文地址:https://www.cnblogs.com/jory/p/7718305.html 1.Excel生成guid,uuid 格式:600d65bc- ...
- ---搭建springMvc框架,希望对初学者有所参考
Spring Mvc ==> Struts2 spring 无法替代 myBatis 工作量大 要自己操作sql语句 ==> hibernate Spring Mvc 取代St ...
- css怎么解决表格边框线重复问题
<ul> <li><a href="#">1</a></li> <li><a href="# ...
- JS原型与原型链终极详解 (转载)
这篇文章需要认认真真仔仔细细的看才能看懂 一. 普通对象与函数对象 JavaScript 中,万物皆对象!但对象也是有区别的.分为普通对象和函数对象,Object ,Function 是JS自带的函 ...
- object of type 'Response' has no len()
看见没,这里括号弄错了! 网上解释是requests.get()得到的是一个response对象,无法用BeautifulSoup解析,如果要解析,解析对象应该是requests.get().cont ...