【发布时间】:2018-04-25 20:17:21
【问题描述】:
我正在尝试在 jupyter notebook 中使用最大信息系数,Boston Housing dataset。
import numpy as np
import pandas as pd
from minepy import MINE
#Read dataset
df = pd.read_csv('housing.data', delim_whitespace=True, header=None);
col_name = ['CRIM', 'ZN' , 'INDUS', 'CHAS', 'NOX', 'RM', 'AGE', 'DIS', 'RAD', 'TAX', 'PTRATIO', 'B', 'LSTAT', 'MEDV']
df.columns = col_name;
#Compute MIC
m = MINE()
m.compute_score(df[col_name[0:13]], df.MEDV)
print(m.mic())
m.compute_score(.. 给我一个ValueError: Buffer has wrong number of dimensions (expected 1, got 2)。
更新
我现在明白compute_score() 期望的是向量而不是矩阵。在 df.MEDV 和 13 个功能 df[col_name[0:13]] 之间找到 MIC 分数的正确方法是什么?
【问题讨论】:
-
能否指出导致错误的行号?
-
@AmrKeleg 我就是这么做的。谢谢。
标签: python python-3.x pandas regression data-science