如何解决方差通胀因子输出统计模型
我正在尝试使用statsmodels查找多重共线性,但是我的代码输出未显示方差膨胀因子,而是显示为生成器对象的数据框:
php admin/cli/upgrade.php
输出结果
from statsmodels.stats.outliers_influence import variance_inflation_factor
variables = df[['Mileage','Year','EngineV']]
vif = pd.DataFrame()
vif['VIF'] = (variance_inflation_factor(variables.values,i) for i in range(variables.shape[1]))
vif['features'] = variables.columns
而不是给出实际值。我确信这是一个简单的解决方法,但是我对Python和编码非常陌生。谢谢
解决方法
您应该将生成器转换为列表。您可以使用列表推导或list()函数。
vif['VIF'] = [variance_inflation_factor(variables.values,i) for i in range(variables.shape[1])]
或
vif['VIF'] = list((variance_inflation_factor(variables.values,i) for i in range(variables.shape[1])))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。