Поиск VIF стандартизированных переменных в PythonPython

Программы на Python
Anonymous
Поиск VIF стандартизированных переменных в Python

Сообщение Anonymous »

Код: Выделить всё

import numpy as np
import pandas as pd
import statsmodels.api as sm
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
import seaborn as sns
sns.set()
from statsmodels.stats.outliers_influence import variance_inflation_factor
from sklearn.preprocessing import StandardScaler

object= StandardScaler()
standard = object.fit_transform(data_preprocessed)
vif_columns = data_preprocessed.columns

for v in range(len(standard[0])):
data_ = standard[:,v]
data_i = pd.DataFrame(data_)
res = [variance_inflation_factor(data_i.values, i) for i in range(len(data_i.columns))] #Error Here
print(vif_columns[v]+" : "+res)

#ERROR : zero-size array to reduction operation maximum which has no identity
Данные хранятся в переменной data_preprocessed. Я попытался сначала стандартизировать данные, прежде чем рассчитывать vif. После стандартизации данных я получил двумерный массив, в котором каждая строка представляет строку из предыдущий data_preprocessed, однако, когда я пытаюсь вычислить vif, я постоянно получаю сообщение об ошибке: Массив нулевого размера до максимума операции сокращения, который не имеет идентичности, может ли кто-нибудь помочь мне объяснить обходной путь ошибки и предложить какое-либо лучшее решение проблемы

Подробнее здесь: https://stackoverflow.com/questions/790 ... -in-python

Вернуться в «Python»