Python找不到与指定签名和ufunc svd的强制转换匹配的循环

2024-09-21 03:18:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图使用statsmodels.stats.outliers_influence_variance_inflation_factor找到数据集的方差膨胀因子(VIF)。我运行了一个完全分类变量的数据集的代码,它返回了VIF矩阵。但是,当我为另一个数据集运行代码时,我一直会得到一个类型错误。这个数据集有数字变量。请帮忙。请在下面找到代码:

from statsmodels.stats.outliers_influence import variance_inflation_factor as vif
full_data = full_data.drop(response, axis=1)
data_columns = full_data.columns
out = pd.DataFrame()
Variable_name = []
VIF = []
for col_name in data_columns:
    index = full_data.columns.get_loc(col_name)
    print index
    data = full_data.as_matrix()
    Variable_name.append(col_name)
    VIF.append(np.array(vif(data, index), dtype=float))
out['Variable_name'] = Variable_name
out['Variance Inflation Factor'] = VIF

它适用于这样的数据集
甲、乙、丙 11月1日 12年 11月3日 11月4日 二一五 但不是这样的-42.1585 14.7353 3.45338 4.67938-19.0982-17.0384-60.3472 3.45338 4.67938-19.0982-42.1585-5.62736 3.45338 4.67938-19.0982-17.0384-98.0905 3.45338 4.67938-19.0982
-17.0384-5.62736 3.45338 4.67938-19.0982


Tags: columns数据代码namedataindexstatscol

热门问题