Я работаю над проектом Data Science с набором данных Fifa. Я очистил данные и позаботился о любых значениях NaN в данных, чтобы подготовить их к разделению на тестирование и обучение. Мне нужно использовать StratifiedShuffleSplit, чтобы разделить данные. Обновлен до более чистого способа разделения данных значений на группы, но я все еще получаю значения NaN, когда они проходят разделение.
Ссылка на набор данных, который я использую: https://www.kaggle.com/karangadiya/fifa19
n = fifa['value'].count()
folds = 3
fifa.sort_values('value', ascending=False, inplace=True)
fifa['group_id'] = np.floor(np.arange(n)/folds)
fifa['value_cat'] = fifa.groupby('group_id', as_index = False)['name'].transform(lambda x: np.random.choice(v_cats, size=x.size, replace = False))
На этом этапе, когда я проверяю тестовые и обучающие данные, теперь у меня вводятся загадочные значения NaN. Я думаю, что значения NaN могут быть результатом .lo c, поскольку я получаю «предупреждение» в jupyter.
c:\python37\lib\site-packages\ipykernel_launcher.py:6: FutureWarning:
Passing list-likes to .loc or [] with any missing label will raise
KeyError in the future, you can use .reindex() as an alternative.
Код ниже:
from sklearn.model_selection import StratifiedShuffleSplit
split = StratifiedShuffleSplit(n_splits=1, test_size=0.2, random_state=42)
for train_index, test_index in split.split(fifa, fifa['value_cat']):
strat_train_set = fifa.loc[train_index]
strat_test_set = fifa.loc[test_index]
fifa = strat_train_set.drop('value', axis=1)
value_labels = strat_train_set['value'].copy()
ПОЖАЛУЙСТА, ПОМОГИТЕ МОИМ БЕДНЫМ ДУША !!
введите описание изображения здесь