Pandas库学习之dataframe.corr()函数

Pandas库学习之dataframe.corr()函数

一、简介

dataframe.corr()是Pandas库中的一个函数,用于计算DataFrame中各列之间的相关系数。相关系数衡量的是两个变量之间线性关系的强度和方向,结果在-1到1之间,分别表示完全负相关和完全正相关。

二、语法和参数

DataFrame.corr(method='pearson', min_periods=1)
  • method: 可选。计算相关系数的方法,有’pearson’(默认)、‘kendall’、'spearman’三种可选。
    • 'pearson':标准皮尔逊相关系数。
    • 'kendall':肯德尔等级相关系数。
    • 'spearman':斯皮尔曼等级相关系数。
  • min_periods: 可选。每对元素的最小数量,以便计算相关系数。

三、实例

3.1 计算默认的皮尔逊相关系数
import pandas as pd

# 创建示例数据
data = {
    'A': [1, 2, 3, 4, 5],
    'B': [5, 4, 3, 2, 1],
    'C': [2, 2, 3, 4, 4]
}
df = pd.DataFrame(data)

# 计算相关系数
correlation_matrix = df.corr()
print(correlation_matrix)

输出:

          A         B         C
A  1.000000 -1.000000  0.948683
B -1.000000  1.000000 -0.948683
C  0.948683 -0.948683  1.000000
3.2 计算斯皮尔曼相关系数
import pandas as pd

# 创建示例数据
data = {
    'A': [1, 2, 3, 4, 5],
    'B': [5, 4, 3, 2, 1],
    'C': [2, 2, 3, 4, 4]
}
df = pd.DataFrame(data)

# 计算相关系数
correlation_matrix = df.corr(method='spearman')
print(correlation_matrix)

输出:

          A         B         C
A  1.000000 -1.000000  0.948683
B -1.000000  1.000000 -0.948683
C  0.948683 -0.948683  1.000000
3.3 计算斯皮尔曼相关系数
import pandas as pd

# 创建示例数据
data = {
    'A': [1, 2, 3, 4, 5],
    'B': [5, 4, 3, 2, 1],
    'C': [2, 2, 3, 4, 4]
}
df = pd.DataFrame(data)

# 计算相关系数
correlation_matrix = df.corr(method='kendall')
print(correlation_matrix)

输出

          A         B         C
A  1.000000 -1.000000  0.894427
B -1.000000  1.000000 -0.894427
C  0.894427 -0.894427  1.000000

四、注意事项

  • 当使用kendallspearman方法时,计算可能会比pearson方法慢,因为这些方法需要排序。
  • 如果数据集中存在NaN值,默认情况下这些值会被忽略。
  • 计算相关系数前,确保数据已经清洗并准备好,以避免错误或不准确的结果。
  • 7
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值