Ошибка Input contains NaN, infinity or a value too large for dtype('float64')

Тип данных в файле:

data.dtypes
Пол                               int64
Старше 65 лет                     int64
Есть партнер                      int64
Есть иждивенцы                    int64
Срок пребывания                   int64
Телефонные услуги                 int64
Онлайн безопасность               int64
Онлайн резервное копирование      int64
Защита устройства                 int64
Техподдержка                      int64
Потоковое телевидение             int64
Онлыйн фильмы                     int64
Контракт                          int64
Безбумажные счета                 int64
Способ оплаты                     int64
Месячная плата                  float64
Плата за все время              float64
Отток                             int32
dtype: object

Пропущенных данных или NaN нет, использовала для этого разные коды:

data.fillna(data.mean())
data =data[~data.isin([np.nan, np.inf, -np.inf]).any(1)]
np.isnan(data)
np.where(np.isnan(data))
np.nan_to_num(data)

Но всё равно при построении логистической регрессии

from sklearn.linear_model import LogisticRegression
model = LogisticRegression()
result = model.fit(X_train, Y_train)

выдаёт следующую ошибку:

ValueError                                Traceback (most recent call last)
<ipython-input-19-041a5e114543> in <module>
      1 from sklearn.linear_model import LogisticRegression
      2 model = LogisticRegression()
----> 3 result = model.fit(X_train, Y_train)

~\anaconda3\lib\site-packages\sklearn\linear_model\_logistic.py in fit(self, X, y, sample_weight)
   1525 
   1526         X, y = check_X_y(X, y, accept_sparse='csr', dtype=_dtype, order="C",
-> 1527                          accept_large_sparse=solver != 'liblinear')
   1528         check_classification_targets(y)
   1529         self.classes_ = np.unique(y)

~\anaconda3\lib\site-packages\sklearn\utils\validation.py in check_X_y(X, y, accept_sparse, accept_large_sparse, dtype, order, copy, force_all_finite, ensure_2d, allow_nd, multi_output, ensure_min_samples, ensure_min_features, y_numeric, warn_on_dtype, estimator)
    753                     ensure_min_features=ensure_min_features,
    754                     warn_on_dtype=warn_on_dtype,
--> 755                     estimator=estimator)
    756     if multi_output:
    757         y = check_array(y, 'csr', force_all_finite=True, ensure_2d=False,

~\anaconda3\lib\site-packages\sklearn\utils\validation.py in check_array(array, accept_sparse, accept_large_sparse, dtype, order, copy, force_all_finite, ensure_2d, allow_nd, ensure_min_samples, ensure_min_features, warn_on_dtype, estimator)
    576         if force_all_finite:
    577             _assert_all_finite(array,
--> 578                                allow_nan=force_all_finite == 'allow-nan')
    579 
    580     if ensure_min_samples > 0:

~\anaconda3\lib\site-packages\sklearn\utils\validation.py in _assert_all_finite(X, allow_nan, msg_dtype)
     58                     msg_err.format
     59                     (type_err,
---> 60                      msg_dtype if msg_dtype is not None else X.dtype)
     61             )
     62     # for object dtype data, we only check for NaNs (GH-13254)

ValueError: Input contains NaN, infinity or a value too large for dtype('float64').

Помогите, пожалуйста, исправить ошибку!

Ответы (0 шт):