如何使用Python的Pandas DateFrame分析两列、多列数据之间的相关性

您所在的位置:网站首页 excel计算两列数据相关性怎么算 如何使用Python的Pandas DateFrame分析两列、多列数据之间的相关性

如何使用Python的Pandas DateFrame分析两列、多列数据之间的相关性

2023-07-31 17:02| 来源: 网络整理| 查看: 265

如何使用Python的Pandas中DateFrame 分析两列、多列数据之间的相关性- DataFrame.corr()函数用法解析

Python is a great language for doing data analysis, primarily because of the fantastic ecosystem of data-centric python packages. Pandas is one of those packages and makes importing and analyzing data much easier.

Pandas dataframe.corr() is used to find the pairwise correlation of all columns in the dataframe. Any na values are automatically excluded. For any non-numeric data type columns in the dataframe it is ignored.

Python是一个用来做数据分析的首选语言,具有很多不可思议的数据分析模块。Pandas就是其中一个模块,能够使数据导入和分析变得更加简单。

Pandas dataframe.corr()就是用来分析多列数据集之间,任意两列之间数据关联性的函数。在别分析的数据集中,na值会被自动的排除。数据集中包含非数字的数据类型的列,将会被忽略。

一、corr()函数怎么用?

举个例子:

1.创建dataframe对象df,并且打印出来。然后执行df.corr()就完成调用了。是不是超级简单!!!

import pandas as pd #创建一个dataframe对象 df = pd.DataFrame({'A':[1,2,3,4], 'B':[7,8,9,10]}) #打印对象 print(df) #调用函数 df.corr()

输出如下:

df的结构是这样的:

df.corr()的输入如下:

结果是代表什么呢?代表A和B列的数据结构之间是有直接联系的,或者之间是有联系的。

二、不同相关模式有效性的验证

1.创建一个具有两个列的dataframe,第一列为递增数列;第二列为第一列的3次幂函数。代码如下:

import pandas as pd import numpy as np #创建一个dataframe对象,B列是A列的3次幂 a_list = np.arange(4) b_list = [4*x**3+3 for x in a_list] df = pd.DataFrame({'A':a_list, 'B':b_list}) print(df) #模式可选值{‘pearson’, ‘kendall’, ‘spearman’} print(df.corr(method='pearson')) print(df.corr(method='spearman'))

我们看一下输出:

corr可选的方式有三种:

1)pearson:相关系数来衡量两个数据集合是否在一条线上面,即针对线性数据的相关系数计算,针对非线性数据便会有误差。

2)kendall:用于反映分类变量相关性的指标,即针对无序序列的相关系数,非正太分布的数据

3)spearman:非线性的,非正太分析的数据的相关系数 上面的结果验证了,pearson对现行的预测较好,对于幂函数,预测差强人意。

好的,实验就到这里了。这是非常有用的一个函数,简单实用。如果一个数据不清楚有无相关性。先对函数来一个corr分析一下。

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3