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多线程同步实例教程

python多线程同步实例教程

前言 进程之间通信与线程同步是一个历久弥新的话题,对编程稍有了解应该都知道,但是细说又说不清。一方面除了工作中可能用的比较少,另一方面就是这些概念牵涉到的东西比较多,而且相对较深。网络编...

python操作日期和时间的方法

不管何时何地,只要我们编程时遇到了跟时间有关的问题,都要想到 datetime 和 time 标准库模块,今天我们就用它内部的方法,详解python操作日期和时间的方法。1.将字符串的时...

Python计算回文数的方法

本文实例讲述了Python计算回文数的方法。分享给大家供大家参考。具体如下: 这里检查数字是不是回文数,用196算法生成一个数字的回文数 num = 905; def is_Pali...

详解python3安装pillow后报错没有pillow模块以及没有PIL模块问题解决

详解python3安装pillow后报错没有pillow模块以及没有PIL模块问题解决

也许自己真的就是有手残的毛病,你说好端端的环境配置好了,自己还在那里瞎鼓捣,我最不想看到的就是在安装一个别的模块的时候,自动卸载了本地的其他模块,每每这个时候,满满的崩溃啊,今天就是一个...

Python cookbook(数据结构与算法)实现优先级队列的方法示例

本文实例讲述了Python实现优先级队列的方法。分享给大家供大家参考,具体如下: 问题:要实现一个队列,它能够以给定的优先级对元素排序,且每次pop操作时都会返回优先级最高的那个元素;...