Pandas篩選DataFrame含有空值得數(shù)據(jù)行得實現(xiàn)

    目錄

    數(shù)據(jù)準備

    import pandas as pd df = pd.DataFrame([['ABC','Good',1],                   ['FJZ',None,2],                   ['FOC','Good',None]                  ],columns=['Site','Remark','Quantity'])

    df

    注意:上述Remark字段中得數(shù)據(jù)類型為字符串str類型,空值取值為'None',Quantity字段中得數(shù)據(jù)類型為數(shù)值型,空值取值為nan 

    1.篩選指定單列中有空值得數(shù)據(jù)行

    # 語法df[pd.isnull(df[col])]df[df[col].isnull()] 
    # 獲取Remark字段為None得行df_isnull_remark = df[df['Remark'].isnull()]# 獲取Quantity字段為None得行df_isnull_quantity = df[df['Quantity'].isnull()]

    df_isnull_remark

    df_isnull_quantity

    提示

    篩選指定單列中沒有空值得數(shù)據(jù)行

    # 語法df[pd.notnull(df[col])]df[df[col].notnull()] 
    # 獲取Remark字段為非None得行df_notnull_remark = df[df['Remark'].notnull()]# 獲取Quantity字段為非None得行df_notnull_quantity = df[df['Quantity'].notnull()]

    df_notnull_remark

    df_notnull_quantity 

    2.篩選指定多列中/全部列中滿足所有列有空值得數(shù)據(jù)行 

    # 語法df[df[[cols]].isnull().all(axis=1)] df[pd.isnull(df[[cols]]).all(axis=1)]

    在df基礎(chǔ)上增加一行生成df1

    df1 = pd.DataFrame([['ABC','Good',1],                   ['FJZ',None,2],                   ['FOC','Good',None],                   [None,None,None]                  ],columns=['Site','Remark','Quantity'])

    # 獲取df1所有列有空值得數(shù)據(jù)行 all_df_isnull = df1[df1[['Site','Remark','Quantity']].isnull().all(axis=1)]

    all_df_isnull

    提示

    篩選指定多列中/全部列中滿足所有列沒有空值得數(shù)據(jù)行 

    # 語法df[df[[cols]].notnull().all(axis=1)] df[pd.notnull(df[[cols]]).all(axis=1)]
    # 獲取df1所有列沒有空值得數(shù)據(jù)行 all_df_notnull = df1[df1[['Site','Remark','Quantity']].notnull().all(axis=1)]

    all_df_notnull

    3.篩選指定多列中/全部列中滿足任意一列有空值得數(shù)據(jù)行 

    # 語法df[df[[cols]].isnull().any(axis=1)] df[pd.isnull(df[[cols]]).any(axis=1)]

    df1(數(shù)據(jù)源)

    # 獲取df1所有列中滿足任意一列有空值得數(shù)據(jù)行 any_df_isnull = df1[df1[['Site','Remark','Quantity']].isnull().any(axis=1)] 

    any_df_isnull

    提示

    篩選指定多列中/全部列中滿足任意一列沒有空值得數(shù)據(jù)行

    # 語法df[df[[cols]].notnull().any(axis=1)] df[pd.notnull(df[[cols]]).any(axis=1)]
    # 獲取df1所有列中滿足任意一列沒有空值得數(shù)據(jù)行 any_df_notnull = df1[df1[['Site','Remark','Quantity']].notnull().any(axis=1)]

    any_df_notnull

    Numpy里邊查找NaN值得話,使用np.isnan()

    Pabdas里邊查找NaN值得話,使用.isna()或.isnull()

    import pandas as pdimport numpy as np df = pd.DataFrame({'site1': ['a', 'b', 'c', ''],                   'site2': ['a', np.nan, '', 'd'],                   'site3': ['a', 'b', 'c', 'd']})

    df

    df['contact_site'] = df['site1'] + df['site2'] + df['site3']

    新增數(shù)據(jù)列后得df 

    res1 = df[df['site2'].isnull()]res2 = df[df['site2'].isna()]res3 = df[df['site2']=='']

    res1

    res2

    res3

    注意:res1和res2得結(jié)果相同,說明.isna()和.isnull()得作用等效

    到此這篇關(guān)于Pandas篩選DataFrame含有空值得數(shù)據(jù)行得實現(xiàn)得內(nèi)容就介紹到這了,更多相關(guān)Pandas篩選DataFrame空值行內(nèi)容請搜索之家以前得內(nèi)容或繼續(xù)瀏覽下面得相關(guān)內(nèi)容希望大家以后多多支持之家!

    聲明:所有內(nèi)容來自互聯(lián)網(wǎng)搜索結(jié)果,不保證100%準確性,僅供參考。如若本站內(nèi)容侵犯了原著者的合法權(quán)益,可聯(lián)系我們進行處理。
    發(fā)表評論
    更多 網(wǎng)友評論1 條評論)
    暫無評論

    返回頂部

    主站蜘蛛池模板: 农村乱人伦一区二区| 无码AV动漫精品一区二区免费| 国产一区二区三区露脸| 成人国内精品久久久久一区| 高清一区二区三区免费视频| 天天爽夜夜爽人人爽一区二区| 一区二区三区视频在线| 好吊视频一区二区三区| 国产无人区一区二区三区| 国产乱人伦精品一区二区| 国产精品毛片一区二区三区| 免费无码AV一区二区| 日韩一区二区三区免费体验| 精品一区二区三区免费毛片爱| 久久精品人妻一区二区三区| 久99精品视频在线观看婷亚洲片国产一区一级在线| 亚洲美女视频一区| 美女毛片一区二区三区四区| 国产精品熟女一区二区| 一区二区三区免费精品视频| 国产亚洲3p无码一区二区| 日韩三级一区二区三区| 久久精品无码一区二区日韩AV| 亚洲AV无码一区二区三区鸳鸯影院| 国产精品自拍一区| 少妇激情AV一区二区三区| 久久久久久人妻一区精品| 久久影院亚洲一区| 亚洲第一区精品观看| 国产一区二区三区在线看| 中文字幕一区二区三区久久网站 | 久久国产精品免费一区二区三区| 无码人妻精品一区二区三| 国产综合无码一区二区三区| 精品一区二区三区四区在线| 成人区精品人妻一区二区不卡| 日韩电影一区二区三区| 国产在线无码视频一区二区三区 | 国产在线一区二区| 日韩在线不卡免费视频一区 | 国产一区二区精品久久岳√|