Определить столбец панд, который содержит значение None - PullRequest
0 голосов
/ 09 января 2019

У меня есть кадр данных геопанды gdf, который выглядит следующим образом:

   Id  text  float                           geometry
0   0  1.65   0.00  POINT (1173731.7407 5354616.9386)
1   0  None   2.20   POINT (1114084.319 5337803.2708)
2   0  2.25   6.55  POINT (1118876.2311 5307167.5724)
3   0     0   0.00  POINT (1179707.5312 5313710.8389)

Как определить столбец (столбцы), которые содержат значение None?

Я попытался использовать следующее понимание списка безуспешно:

import pandas as pd
import geopandas as gp

gdf = gp.read_file('/temp/myshapefile.shp')

s = [pd.isnull(col) for col in gdf.columns if True]

Что приводит к:

In [1]: s
Out[1]: [False, False, False, False]

Мой желаемый вывод в этом случае:

['text']

1 Ответ

0 голосов
/ 09 января 2019
print(gdf.isna().any())

даст вывод, какой столбец содержит ноль в терминах true или false

Id       False
text     True
float    False
geometry False

Так что используйте это

print(gdf.columns[gdf.isna().any()].tolist())

выход:

['text']
...