Невозможно удалить ValueError для неверных значений [Закрыто: Решена проблема] - PullRequest
0 голосов
/ 26 марта 2019

Я сгенерировал функции из своих данных для ввода в алгоритм обучения.

Я работал со многими функциями раньше, но никогда не сталкивался с проблемой valueError: ранее натот же набор данных.

Ошибка:

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

Структура моих данных (функций) выглядит следующим образом:

p_s,ne_s,ng_s,su_s,val
90,2320,30,0

Это была проблема.всего меток 5, но значения 4

при этом:

print(np.where(np.isnan(X)))

Я получаю:

(array([], dtype=int64), array([], dtype=int64))

Я также пытался:

np.isnan(X)

np.nan_to_num(X)

pd.DataFrame(X).fillna()

Но у меня ничего не получалось!


Код:

import pandas as pd
from sklearn.model_selection import train_test_split

data = pd.read_csv('data.csv')

X = data[['p_s','ne_s','ng_s','su_s']]

y = data['val']

X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=0)

После этого я начинаю подгонять свои данные к алгоритму.

---//some code//--
.fit(X_train, y_train)
---//some code//--

Ожидания:

Ошибка значения отсутствует.Кроме того, почему это происходит в первую очередь?Я много работал с использованием до семи функций и никогда не сталкивался с тем же.Более того, я не могу делать ничего плохого в коде, потому что во всем сценарии нет деления и умножения.

Acutal:

ValueError: Как указано выше.

Выявленная проблема:

Когда я печатаю y_train и y_test , они возвращают значения NaN.Итак, я надеюсь, что данные верны.

...