Используя scikit-learn (sklearn), как обрабатывать недостающие данные для линейной регрессии?
Я попробовал это, но не смог заставить его работать для моих данных:Используйте Scikit Learn, чтобы выполнить линейную регрессию для фрейма данных временного ряда.
Мои данные состоят из 2-х DataFrames.DataFrame_1.shape = (40,5000)
а такжеDataFrame_2.shape = (40,74)
, Я пытаюсь сделать какой-то тип линейной регрессии, ноDataFrame_2
содержитNaN
недостающие значения данных. Когда яDataFrame_2.dropna(how="any")
форма падает до(2,74)
.
Есть ли какой-либо алгоритм линейной регрессии в sklearn, который может обрабатыватьNaN
ценности?
Я моделирую это послеload_boston
отsklearn.datasets
гдеX,y = boston.data, boston.target = (506,13),(506,)
Вот мой упрощенный код:
X = DataFrame_1
for col in DataFrame_2.columns:
y = DataFrame_2[col]
model = LinearRegression()
model.fit(X,y)
#ValueError: Input contains NaN, infinity or a value too large for dtype('float64').
Я сделал вышеупомянутый формат, чтобы формы соответствовали матрицам
Если выложитьDataFrame_2
поможет, пожалуйста, прокомментируйте ниже, и я добавлю это.