Строка среза столбца с условиями с np.where не работает - PullRequest
1 голос
/ 27 мая 2020

Моя колонка такая:

введите описание изображения здесь

Я хочу создать новый столбец, нарезав столбцы «Политика», где он содержит «-», в противном случае он вернет исходное значение. Ожидаемые значения - это строки перед «-».

Это мой код:

df['New_col']=np.where(df['Policy'].str.contains('-'),df['Policy'].str.slice(0,df['Policy'].str.find('-'),1),df['Policy'])

Но результат - Nan value all. Покажите, пожалуйста, в чем я ошибаюсь.

1 Ответ

2 голосов
/ 27 мая 2020

Я думаю, решение должно быть упрощено - разделите значения на - и выберите первое значение, если не существует -, выберите то же значение, поэтому np.where здесь не требуется:

df['New_col']=df['Policy'].str.split('-').str[0]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...