检查数据框中的列是否缺少值

Check if column in dataframe is missing values

我有一列满是州名的列。 我知道如何遍历它,但我不知道使用什么语法让它检查空值。试过 "isnull()" 但这似乎是错误的方法。有人知道方法吗?

想的是:

for state_name in datFrame.state_name:
    if datFrame.state_name.isnull():
        print ('no name value' + other values from row)
    else:
        print(row is good.)

df.head():
 state_name state_ab            city zip_code
0    Alabama       AL       Chickasaw    36611
1    Alabama       AL      Louisville    36048
2    Alabama       AL      Columbiana    35051
3    Alabama       AL         Satsuma    36572
4    Alabama       AL  Dauphin Island    36528


to_dict():
{'state_name': {0: 'Alabama',
  1: 'Alabama',
  2: 'Alabama',
  3: 'Alabama',
  4: 'Alabama'},
 'state_ab': {0: 'AL', 1: 'AL', 2: 'AL', 3: 'AL', 4: 'AL'},
 'city': {0: 'Chickasaw',
  1: 'Louisville',
  2: 'Columbiana',
  3: 'Satsuma',
  4: 'Dauphin Island'},
 'zip_code': {0: '36611', 1: '36048', 2: '35051', 3: '36572', 4: '36528'}}

根据您的描述,您可以使用 np.where 检查行是 null 还是空字符串。

df['status'] = np.where(df['state'].eq('') | df['state'].isnull(), 'Not Good', 'Good')

(MCVE) 例如,假设您有以下数据框

    state
0   New York
1   Nevada
2   
3   None
4   New Jersey

然后,

    state       status
0   New York    Good
1   Nevada      Good
2               Not Good
3   None        Not Good
4   New Jersey  Good

总是值得一提的是,您应该尽可能避免循环,因为它们比掩码慢得多