Что такое строковый эквивалент np.nan? - PullRequest
0 голосов
/ 19 февраля 2020

У меня есть датафрейм, и я хочу добавить пустой столбец. Если бы это было для чисел, я бы использовал df["new_column"] = pd.np.nan. Но что, если я хочу, чтобы столбец (а) содержал строки и (б) был фильтруемым с pd.isnull()? Есть ли лучшая идея, чем df["new_column"] = ""?

1 Ответ

0 голосов
/ 19 февраля 2020

Насколько я понимаю, Python не имеет нулевой строки. Python имеет значение None, но это не строка, а None, которая может быть применена ко всем переменным, а не только к тем, которые изначально определены как строка.

Вы можете использовать NoneType, но тогда столбец будет не строкой, а типом объекта. Вы по-прежнему можете вставлять строки в столбец, но изменение типа столбца на строку будет просто учитывать значения None как строку 'None'

, пожалуйста, посмотрите также: В чем разница между NaN и Нет?

test_df = pd.DataFrame(data={'numbers_column':np.nan,
                             'strings_column':[None, None, None,'random_str']},
                              index=[1,2,3, 4])

Надеюсь, это поможет.

...