Pandas: создать новый столбец, возвращающий True или False, если все остальные значения в строке являются пустыми строками. - PullRequest
0 голосов
/ 19 июня 2020

Я пытаюсь создать новый столбец в моем pandas фрейме данных, который будет иметь значение True, если все значения в других столбцах являются пустыми строками (пустые строки с длиной больше нуля также считаются! Например, ' ' ) или False, если хотя бы одно значение не является пустой строкой.

>>> d
{'col1': ['', '2'], 'col2': ['', 'alpha']}
>>> df =pd.DataFrame(data=d)

Я бы хотел что-то вроде этого

col1       col2       new_column

""          ""          True

"2"       "alpha"       False

1 Ответ

1 голос
/ 19 июня 2020

Вы можете попробовать:

df = pd.DataFrame({'col1': ['      ', '2'], 'col2': ['', 'alpha']})
df['new_col'] = df.replace(' ', '').any(axis=1)

Ваш фрейм данных станет:

    col1    col2    new_col
0               True
1   2   alpha   True

Поскольку вы можете встретить пустые строки с длиной больше нуля, .replace(' ', '') заставит их иметь нулевая длина

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...