数据科学- 统计相关性
相关性
相关性衡量两个变量之间的关系。
我们提到函数的目的是通过将输入 (x) 转换为输出 (f(x)) 来预测值。 我们也可以说,一个函数使用两个变量之间的关系进行预测。
相关系数
相关系数衡量两个变量之间的关系。
相关系数永远不能小于-1或大于1。
- 1 = 变量之间存在完美的线性关系(例如 Average_Pulse 与 Calorie_Burnage)
- 0 = 变量之间没有线性关系
- -1 = 变量之间存在完美的负线性关系(例如,工作时间减少,导致训练期间卡路里消耗量增加)
完美线性关系示例(相关系数 = 1)
我们将使用散点图来可视化 Average_Pulse 和 Calorie_Burnage 之间的关系(我们使用了具有 10 个观察值的运动手表的小数据集)。
这次我们要散点图,所以我们把 kind 改成 "scatter":
实例
import matplotlib.pyplot as plt
health_data.plot(x ='Average_Pulse', y='Calorie_Burnage',
kind='scatter')
plt.show()
Output:
正如我们之前看到的,Average_Pulse 和 Calorie_Burnage 之间存在完美的线性关系。
完美负线性关系示例(相关系数 = -1)
我们在这里绘制了虚构数据。 x 轴代表在培训课程之前我们工作的小时数。 y 轴是 Calorie_Burnage。
如果我们工作时间更长,我们的卡路里消耗量往往会更低,因为我们在训练之前就已经筋疲力尽了。
这里的相关系数是-1。
实例
import pandas as pd
import matplotlib.pyplot as plt
negative_corr =
{'Hours_Work_Before_Training': [10,9,8,7,6,5,4,3,2,1],
'Calorie_Burnage':
[220,240,260,280,300,320,340,360,380,400]}
negative_corr = pd.DataFrame(data=negative_corr)
negative_corr.plot(x ='Hours_Work_Before_Training',
y='Calorie_Burnage', kind='scatter')
plt.show()
亲自试一试 »
非线性关系示例(相关系数 = 0)
在这里,我们绘制了来自 full_health_data 集的 Max_Pulse 与 Duration 的关系图。
如您所见,这两个变量之间没有线性关系。 这意味着更长的训练时间不会导致更高的 Max_Pulse。
这里的相关系数是0。
实例
import matplotlib.pyplot as plt
full_health_data.plot(x ='Duration', y='Max_Pulse',
kind='scatter')
plt.show()