如何计算多个因变量(y1和y2)上的自变量(x)的相关性?

时间:2019-04-24 01:52:10

标签: python statistics regression modeling pls

假设我们有10个独立变量x1,x2,x3,... xn,它们都是分类的,具有相同的0,1,2级(例如,0 =无颜色,1 =红色,2 =绿色)并且您有两个因变量(例如,y1 =裤长,以m为单位,y2 =腰围,以m为单位)。 我们如何确定哪些自变量(x1,x2,x3,... xn)驱动因变量(y1和y2)?

数据示例如下:

| x1 | x2 | x3 | x4 | x5 | x6 | x7  | x8 | x9 | x10 | size(y1) | length(y2) |

|----|----|----|----|----|----|-----|----|----|-----|----------|------------|

|  0 |  1 |  2 |  1 |  0 |  0 |   2 |  1 |  0 |   2 |     0.36 |       0.84 |
|  0 |  1 |  1 |  0 |  2 |  1 |   0 |  2 |  0 |   1 |     0.84 |       1.23 |
|  1 |  2 |  0 |  1 |  0 |  1 |   0 |  1 |  0 |   2 |     1.92 |       3.86 |

我在python中尝试了 PLS回归,这是我的代码

import pandas as pd
import numpy as np
df = pd.read_csv('data.csv', header = 0)

X =  pd.DataFrame.as_matrix(df[[x for x in df.columns if x not in ['waist_size', 'pant_length']]])
Y =  pd.DataFrame.as_matrix(df[[''waist_size', 'pant_length'']])

from sklearn.cross_decomposition import PLSRegression
pls = PLSRegression(n_components = 8)
pls.fit(X,Y)
coef = pls.coef_
sorted_index = np.argsort(np.abs(pls.coef_))

此方法的实际结果如下: 我正在为数据集中的所有行获取一个numpy数组,如下所示

[1, 0],
[1, 0],
[1, 0],
[1, 0],
[1, 0],
[0, 1],
[1, 0]
.....

该如何解释?

而且,有没有一种方法可以计算此类问题中的直接相关性和特征重要性?

0 个答案:

没有答案