【问题标题】:How to count NaN values for each row in pandas dataframe?如何计算熊猫数据框中每一行的 NaN 值?
【发布时间】:2022-12-17 11:46:45
【问题描述】:

我想计算 DataFrame 中每一行的 NaN 值,然后获得具有最少此类值的行。我的解决方案太慢了,而且使用 for 循环也不是 pandas 的方式。有没有更好更快的方法呢?

max_not_nan = 13 # a maximum possible value of NaN's (number of columns + 1) 
row_number = 0
for i in range(df.shape[0]):
  if df.iloc[i].isna().sum() < max_not_nan:
    max_not_nan = df.iloc[i].isna().sum()
    row_number = i

它工作正常期望时间复杂度

【问题讨论】:

    标签: python pandas dataframe


    【解决方案1】:

    transactions.isnull().sum(axis=1).sort_values()

    【讨论】:

    【解决方案2】:

    你能试试这个吗:

    df['nan_count'] = df.isnull().sum(axis=1)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-04-09
      • 1970-01-01
      • 2015-10-07
      • 1970-01-01
      • 2018-06-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多