pandas的相关系数与协方差实例

yipeiwu_com5年前Python基础

1、输出百分比变化以及前后指定的行数

  a = np.arange(1,13).reshape(6,2)
  data = DataFrame(a)
  #计算列的百分比变化,如果想计算行设置axis=1
  print(data.pct_change())
  '''
       0     1
   0    NaN    NaN
   1 2.000000 1.000000
   2 0.666667 0.500000
   3 0.400000 0.333333
   4 0.285714 0.250000
   5 0.222222 0.200000
  '''
  #输出前五行,默认是5,可以通过设置n参数来设置输出的行数
  print(data.head())
  '''
    0  1
  0 1  2
  1 3  4
  2 5  6
  3 7  8
  4 9 10
  '''
  #输出最后五行
  print(data.tail())
  '''
    0  1
  1  3  4
  2  5  6
  3  7  8
  4  9 10
  5 11 12
  '''

2、计算DataFrame列与列的相关系数和协方差

 a = np.arange(1,10).reshape(3,3)
  data = DataFrame(a,index=["a","b","c"],columns=["one","two","three"])
  print(data)
  '''
    one two three
  a  1  2   3
  b  4  5   6
  c  7  8   9
  '''
  #计算第一列和第二列的相关系数
  print(data.one.corr(data.two))
  #1.0
  #返回一个相关系数矩阵
  print(data.corr())
  '''
      one two three
  one  1.0 1.0  1.0
  two  1.0 1.0  1.0
  three 1.0 1.0  1.0
  '''
  #计算第一列和第二列的协方差
  print(data.one.cov(data.two))
  #9.0
  #返回一个协方差矩阵
  print(data.cov())
  '''
      one two three
  one  9.0 9.0  9.0
  two  9.0 9.0  9.0
  three 9.0 9.0  9.0
  '''

3、计算DataFrame与列或者Series的相关系数

  a = np.arange(1,10).reshape(3,3)
  data = DataFrame(a,index=["a","b","c"],columns=["one","two","three"])
  print(data)
  '''
    one two three
  a  1  2   3
  b  4  5   6
  c  7  8   9
  '''
  #计算data与第三列的相关系数
  print(data.corrwith(data.three))
  '''
  one   1.0
  two   1.0
  three  1.0
  '''
  #计算data与Series的相关系数
  #在定义Series的时候,索引一定要去DataFrame的索引一样
  s = Series([5,3,1],index=["a","b","c"])
  print(data.corrwith(s))
  '''
  one   -1.0
  two   -1.0
  three  -1.0
  '''

注意:在使用DataFrame或Series在计算相关系数或者协方差的时候,都会计算索引重叠的、非NA的、按照索引对齐原则,对于无法对齐的索引会使用NA值进行填充。在使用DataFrame与指定的行或列或Series计算协方差和相关系数的时候,默认都是与DataFrame的列进行计算,如果想要计算行,设置axis参数为1即可。

以上这篇pandas的相关系数与协方差实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python 实现在文件中的每一行添加一个逗号

步骤1:读取每行(每行的类型是str) 步骤2:对每行列表化 步骤3:弹出每行的/n两个字符 步骤4:追加,/n三个字符 代码实现如下: #import os From_file=o...

Python使用pyserial进行串口通信的实例

安装pyserial pip install pyserial 查看可用的端口 # coding:utf-8 import serial.tools.list_ports...

多版本Python共存的配置方法

多版本Python共存的配置方法

同一台PC中,如果同时安装Python2和Python3环境,会在执行python命令时出现错误,操作系统会找到默认的配置进行执行。怎么样才能让python2和python3一起工作又互...

使用Python下载歌词并嵌入歌曲文件中的实现代码

使用Python下载歌词并嵌入歌曲文件中的实现代码

使用python扫描本地音乐并下载歌词 这次这个真的是干货哦,昨晚弄了半晚上,,,,从8点吃完饭就开始写,一直到了快12点才弄好,,,新手,伤不起呀。。。。 先简单的说下吧,百度提供了一...

PyQt5 窗口切换与自定义对话框的实例

近日,需要实现一个功能小而全的桌面版软件,所以选中并尝试了PyQt5这个GUI库。在使用中发现,其功能的确完备,但这方面的资料的确不多,有时自己想实现的功能相关资料找不到,有的还不得不阅...