python数据函数_python主要数据探索函数

Python中用于数据探索的库主要是

Pandas(数据分析)统计分析函数 统计作图函数

Matplotlib(数据可视化)

基本统计特征函数

sum按列计算样本总和

mean计算样本的算数平均数

var样本的方差

std标准差

corr 计算spearman(Person)相关系数矩阵

cov协方差矩阵

skew样本偏值(三阶矩阵)

kurt样本峰度(四阶矩阵)

describe样本的基本描述(均值 标准差)

corr

#计算两个列向量的相关系数,采用Spearman方法

#生成样本D,一行为1~7 ,一行为2~8

D = pd.DataFrame([rang(1,8)],[range(2,9)])

#计算相关系数矩阵

D.corr(method = 'spearson')

#提取第一行

s1 = D.loc[0]

#提取第二行

s2 = D.loc[1]

#计算S1 S2的相关系数

s1.corr(s2,method='pearson')

cov

#计算数据样本的协方差矩阵

import numpy as np

import pandas as pd

#产生6×5的随机矩阵

D = pd.DataFrame(np.random.randn(6,5))

print(D)

#计算协方差矩阵

print(D.cov)

0 1 2 3 4

0 1.237153 -0.046697 0.376607 -0.127719 0.723038

1 -0.046697 1.186785 0.254628 0.929739 0.915108

2 0.376607 0.254628 0.795005 -0.192494 0.980395

3 -0.127719 0.929739 -0.192494 1.229316 0.128544

4 0.723038 0.915108 0.980395 0.128544 1.830946

Process finished with exit code 0

skew/kurt

#计算6×5随机矩阵的偏度(三阶矩)/峰度(四阶矩)

import pandas as pd

import numpy as np

D = pd.DataForame(np.random.randn(6,5))

print(D.kurt())

print(D.skew())

0 1.450550

1 -0.366297

2 -0.275504

3 -0.513684

4 1.114285

dtype: float64

0 3.017489

1 -0.343322

2 2.042636

3 0.920795

4 -0.157373

dtype: float64

descirbute

#6*5随机的descirbute

import numpy as np

import pandas as pd

D = pd.DataFrame(np.random.randn(6,5))

print(D.describe())

0 1 2 3 4

count 6.000000 6.000000 6.000000 6.000000 6.000000

mean 0.234195 0.054628 -0.210326 0.686747 0.045748

std 1.110422 0.810948 0.699316 0.858312 1.024418

min -0.943104 -0.995776 -1.171483 -0.306042 -0.961652

25% -0.422272 -0.386177 -0.349850 0.254772 -0.603531

50% -0.130463 -0.138085 -0.324408 0.445415 -0.378101

75% 0.755010 0.673340 -0.141632 1.027609 0.703376

max 2.078576 1.124775 0.997379 2.122794 1.607149

拓展统计特征函数

除了以上之外,pandas还提供了一些非常方便实用的计算统计特征函数,主要有:

累积计算(cum)

cum系列函数作为DataFrame或Series对象的方法而出现的,D.cumsum()

滚动计算(pd.rolling_)

rolling_是pandas的函数,不是DataFrame或Series的对象方法。

pd.rolling_mean(D,k):每k列计算一次均值,滚动计算。

绘制作图函数

在作图前,需要加载以下代码

#导入图像库

import matplotlib.pyplot as plt

#正常显示中文标签

plt.rcParams['font.sans-serif'] = ['simHei']

#用来正常显示负号

plt.rcParams['axes.unicode_minus'] = False

#创建图像区域,指定比例

plt.figure(figsize = (7,5))

plot

Matplotlib通用绘图方式

plt.plot(x,y,S)

S指定绘图时图形的类型,样式和颜色

b:bule r:red g:green o:圆圈 +:加号标记 -:实线 --:虚线

DataFrame或Series对象内置的方法作图

默认index为横坐标,数据为纵坐标

kind参数指定作图类型 line(线)bar(条形)barh、hist(直方图)

box(箱形图) kde(密度图) area、pie(饼状图)

#在0-2π绘制蓝色正弦虚线,每个坐标点上标上五角星

import numpy as np

import matplotlib.pyplot as plt

#x坐标输入

x = np.linspace(0,2*np.pi,50)

y = np.sin(x)

#绘制图形格式为蓝色带星虚线,显示正弦曲线

plt.plot(x,y,'bp--')

plt.show()

pie

绘制饼状图

plt.pie(size)

#通过向量[15,30,45,10]画饼,并且注释,第二部分分离

import matplotlib.pyplot as plt

#定义标签

labels = 'A','B','C','D'

sizes = [15,30,45,10]#每一块的比例

colors = ['yellowgreen','gold','lightskyblue','lightcoral']

#突出显示

explode = (0,0.1,0,0)

plt.pie(sizes,explode=explode,labels=labels,colors=colors,autopct='%1.1f%%',shadow=True,startangle=90)

plt.axis('equal')#显示为园,防止出现椭圆

plt.show()

hist

Plt.hist(x,y)

x为待绘制一维数组,y可以为整数:均匀分为n组;也可以是列表,列表的各个数字为分组的边界点

import matplotlib.pyplot as plt

import numpy as np

#1000个服从正态分布的随机数

x = np.random.randn(1000)

#分成十组进行绘制

plt.hist(x,10)

plt.show()

boxplot

箱形图

D.boxplot()/D.plot(kind = ‘box’)

import matplotlib.pyplot as plt

import numpy as np

import pandas as pd

#1000个服从正太分布的随机数

x = np.random.randn(1000)

#构造两列DataFrame

D = pd.DataFrame([x,x+1]).T

#调用serises内置的作图方法画图,用kind参数指定象形图box

D.plot(kind='box')

plt.show()

plot(logx=True)/D.plot(logy=True)

绘制x或者y轴的对数图形,对x,y轴使用对数刻度(10为底),x y 轴使用线性刻度,进行plot函数绘图,D为pandas的DataFrame或Series

# -- coding: gbk --

import matplotlib.pyplot as plt

plt.rcParams['font.sans-serif'] = ['simHei']

#用来正常显示负号

plt.rcParams['axes.unicode_minus'] = False

import numpy as np

import pandas as pd

#原始数据

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则是误差列,(yerr=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()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值