相关性

Python 统计学入门

Maggie Matsui

Content Developer, DataCamp

两个变量的关系

哺乳动物睡眠习惯散点图:每日总睡眠 vs 每日 REM 睡眠

  • x = 解释/自变量
  • y = 响应/因变量
Python 统计学入门

相关系数

  • 量化两个变量的线性关系
  • 介于 -1 和 1 之间的数
  • 大小对应关系强度
  • 符号(+ 或 -)对应关系方向
Python 统计学入门

大小 = 关系强度

0.99(很强的关系)

散点图,点非常接近一条不可见直线

Python 统计学入门

大小 = 关系强度

0.99(很强的关系)

散点图,点非常接近一条不可见直线

              0.75(强关系)

散点图,点比不可见直线更分散

Python 统计学入门

大小 = 关系强度

0.56(中等关系)

散点图,点比不可见直线更分散

Python 统计学入门

大小 = 关系强度

0.56(中等关系)

散点图,点比不可见直线更分散

             0.21(弱关系)

散点图,点几乎完全随机分布

Python 统计学入门

大小 = 关系强度

0.04(无关系)

散点图,点完全随机分布

  • 知道x的值对y没有任何信息
Python 统计学入门

符号 = 方向

0.75:x增大,y增大

散点图:x 增大时 y 增大

-0.75:x增大,y减小

散点图:x 增大时 y 减小

Python 统计学入门

可视化关系

import seaborn as sns

sns.scatterplot(x="sleep_total", y="sleep_rem", data=msleep)
plt.show()

sleep_rem 与 sleep_total 的散点图

Python 统计学入门

添加趋势线

import seaborn as sns
sns.lmplot(x="sleep_total", y="sleep_rem", data=msleep, ci=None)

plt.show()

带线性趋势线的 sleep_rem 与 sleep_total 散点图

Python 统计学入门

计算相关性

msleep['sleep_total'].corr(msleep['sleep_rem'])
0.751755

 

msleep['sleep_rem'].corr(msleep['sleep_total'])
0.751755
Python 统计学入门

计算相关性的多种方法

  • 本课使用:皮尔逊积矩相关($r$)
    • 最常用
    • $\bar{x} =$ $x$ 的均值
    • $\sigma_x =$ $x$ 的标准差

$$ r = \frac{1}{n - 1} \sum_{i=1}^{n} \frac{(x_i - \bar{x})(y_i - \bar{y})}{\sigma_x \cdot \sigma_y}$$

  • 此公式的变体:
    • Kendall's tau(肯德尔τ)
    • Spearman's rho(斯皮尔曼ρ)
Python 统计学入门

让我们来练习!

Python 统计学入门

Preparing Video For Download...