Ошибка при применении функции к столбцу во фрейме данныхPython

Программы на Python
Anonymous
Ошибка при применении функции к столбцу во фрейме данных

Сообщение Anonymous »

У меня был столбец меток из фрейма данных pandas, в котором было очень много различий. Я хочу сузить его, поместив часть метки на другую метку, которую я выбрал.
Данные должны быть такими (оба столбца находятся в строке dtype):



old_label
< th>new_label




здоровьездоровье


здоровые_советы
здоровье


омоложение
здоровье


правительство
правительство


сенат
правительство


губернатор
правительство



Поэтому я применяю эту функцию, которая проверяет каждую подстроку элемент входов:

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

def relabel(x):
for i in x:
if ("health" or "rejuvenation") in i:
return "health"
elif ("gover" or "senate") in i:
return "government"
else:
return i
Затем я подаю заявку, используя:

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

data['new_label'] = data['old_label'].apply(relabel)
Но он сразу же возвращает точно такое же значение при вводе, поэтому результатом является просто новый столбец с точно такими же данными.
Как это сделать исправить это?

Подробнее здесь: https://stackoverflow.com/questions/785 ... data-frame

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