У меня есть столбец данных pandas, который я получил из запроса базы данных с ячейками blanck. Пустые клетки становятся «Нет», и я хочу, чтобы проверить, если каждая из строк не является None:Выбор ячеек pandas без значения
In [325]: yes_records_sample['name']
Out[325]:
41055 John J Murphy Professional Building
25260 None
41757 Armand Bayou Nature Center
31397 None
33104 Hubert Humphrey Building
16891 Williams Hall
29618 None
3770 Covenant House
39618 None
1342 Bhathal Student Services Building
20506 None
Мое понимание в документации, что я могу проверить, если каждая строка является нулем с isnull()
командой http://pandas.pydata.org/pandas-docs/dev/missing_data.html#values-considered-missing
Эта функция, однако, не работает для меня:
In [332]: isnull(yes_records_sample['name'])
Я получаю следующее сообщение об ошибке:
NameError Traceback (most recent call last)
<ipython-input-332-55873906e7e6> in <module>()
----> 1 isnull(yes_records_sample['name'])
NameError: name 'isnull' is not defined
Я также видел, что кто-то просто заменил «None» строки, но ни один из этих вариантов на этот подход работал для меня: Rename "None" value in Pandas
yes_records_sample['name'].replace('None', "--no value--")
yes_records_sample['name'].replace(None, "--no value--")
я был в конечном счете, может использовать функцию fillna
и заполнить каждый из те строки с пустой строкой yes_records_sample.fillna('')
как обходной путь, а затем я мог проверить yes_records_sample['name']==''
Но я глубоко смущен тем, как работает «Нет» и что это значит. Есть ли способ легко проверить, не является ли ячейка в фрейме данных «Нет»?
Я пытался выяснить, как добавить столбец в кадр данных pandas, который является истинным, если «impact» == «HIGH» или «clin_acc» не является Null. Это очень помогло: nbs_annot ['pathogenic'] = (nbs_annot ['impact'] == 'HIGH') | ~ Nbs_annot [ 'clin_acc']. IsNull() – SummerEla