如何检查连续变量和分类变量之间的相关性?

Posted

技术标签:

【中文标题】如何检查连续变量和分类变量之间的相关性?【英文标题】:How to check for correlation among continuous and categorical variables? 【发布时间】:2017-11-25 10:16:11 【问题描述】:

我有一个包含分类变量(二进制)和连续变量的数据集。我正在尝试应用线性回归模型来预测连续变量。谁能告诉我如何检查分类变量和连续目标变量之间的相关性。

当前代码:

import pandas as pd
df_hosp = pd.read_csv('C:\Users\LAPPY-2\Desktop\LengthOfStay.csv')

data = df_hosp[['lengthofstay', 'male', 'female', 'dialysisrenalendstage', 'asthma', \
              'irondef', 'pneum', 'substancedependence', \
              'psychologicaldisordermajor', 'depress', 'psychother', \
              'fibrosisandother', 'malnutrition', 'hemo']]
print data.corr()

除 lengthofstay 之外的所有变量都是分类变量。这应该有效吗?

【问题讨论】:

到目前为止您尝试过什么?向我们提供代码并明确说明您遇到问题的地方。 在 python 中寻找方差分析(在 R 中是“aov”)。这有助于您识别不同组(分类值)的均值(连续值)是否具有显着不同的均值。如果您只有两组,请使用双边 t.test(配对或非配对)。 按照本教程进行操作。我认为这就是您要寻找的:marsja.se/four-ways-to-conduct-one-way-anovas-using-python @AdeelAhmad 我已经添加了到目前为止的代码。我得到的输出是一个矩阵,但我不确定这是否正确。据我所知,对于连续变量,这很有效。 感谢@Rockbar,但我在 pandas 数据框中有数据,并且有多个包含大量观察值的列。方差分析在这里会好吗? 【参考方案1】:

这种情况下的相关性非常具有误导性,因为我们将分类变量与连续变量进行比较

【讨论】:

【参考方案2】:

将您的分类变量转换为虚拟变量here 并将您的变量放入 numpy.array。例如:

data.csv

age,size,color_head
4,50,black
9,100,blonde
12,120,brown
17,160,black
18,180,brown

提取数据:

import numpy as np
import pandas as pd

df = pd.read_csv('data.csv')

df:

将分类变量color_head转换为虚拟变量:

df_dummies = pd.get_dummies(df['color_head'])
del df_dummies[df_dummies.columns[-1]]
df_new = pd.concat([df, df_dummies], axis=1)
del df_new['color_head']

df_new:

将其放入 numpy 数组中:

x = df_new.values

计算相关性:

correlation_matrix = np.corrcoef(x.T)
print(correlation_matrix)

输出:

array([[ 1.        ,  0.99574691, -0.23658011, -0.28975028],
       [ 0.99574691,  1.        , -0.30318496, -0.24026862],
       [-0.23658011, -0.30318496,  1.        , -0.40824829],
       [-0.28975028, -0.24026862, -0.40824829,  1.        ]])

见:

numpy.corrcoef

【讨论】:

以上是关于如何检查连续变量和分类变量之间的相关性?的主要内容,如果未能解决你的问题,请参考以下文章

如何解读logistic回归分析

SPSS:如何将连续变量转换为等级变量?

统计学习方法五 逻辑回归分类

求教求教!广义估计方程因变量是连续性变量时为啥也可以算出来OR值啊?

如何制作双变量交互分类表

请问连续性变量和离散性变量有啥区别.