pandas-在列中查找第一个非空值

发布于 2021-01-29 17:23:38

如果我的序列具有NULL或某些非null值。我如何找到第一行的值不为NULL,以便可以将数据类型报告给用户。如果该值非空,则该系列中的所有值都是相同的数据类型。

谢谢

关注者
0
被浏览
324
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    您可以使用first_valid_indexselect by loc

    s = pd.Series([np.nan,2,np.nan])
    print (s)
    0    NaN
    1    2.0
    2    NaN
    dtype: float64
    
    print (s.first_valid_index())
    1
    
    print (s.loc[s.first_valid_index()])
    2.0
    
    # If your Series contains ALL NaNs, you'll need to check as follows:
    
    s = pd.Series([np.nan, np.nan, np.nan])
    idx = s.first_valid_index()  # Will return None
    first_valid_value = s.loc[idx] if idx is not None else None
    print(first_valid_value)
    None
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看