Pandas?篩選和刪除目標值所在得行得實現

    目錄

    1.篩選出目標值所在行 

    單列篩選

    # df[列名].isin([目標值])對當前列中存在目標值得行會返回True,不存在得返回Falsedf[df[列名].isin([目標值])]

    練習案例 

    import pandas as pd df_bom_data = pd.DataFrame([['A123',1200,5],                            ['B456',550,2],                            ['C437',500,10],                            ['D112',621,7],                            ['E211',755,11],                            ['F985',833,8]                            ],columns=['Material','Price','Quantity']) df_material_shortage_data = pd.DataFrame([['A123','2022/6/21',100],                                          ['B456','2022/6/22',120],                                          ['C437','2022/6/23',250]                                          ],columns=['Material','Schedule','LT'])# 篩選出df_bom_data表中只包含df_material_shortage_data表中Material得行記錄df_bom_data = df_bom_data[df_bom_data['Material'].isin(df_material_shortage_data['Material'])]

    df_bom_data

    df_material_shortage_data 

    df_bom_data(處理后)

    多列篩選

    # 同時滿足用&連接,或得話用 | 連接df[df[列名].isin([目標值]) & df[列名].isin([目標值])]df[df[列名].isin([目標值]) | df[列名].isin([目標值])]

    練習案例 

    import pandas as pd df = pd.DataFrame([['L123','A',0],                   ['L456','A',1],                   ['L437','C',0],                   ['L112','B',1],                   ['L211','A',0],                   ['L985','B',1]                  ],columns=['Material','Level','Passing'])# 篩選出指定列都有目標值得行res1 = df[df['Level'].isin(['A','C']) & df['Passing'].isin([0])]# 篩選出至少有一列有目標值得行res2 = df[df['Level'].isin(['A','C']) | df['Passing'].isin([0])]

    df

    res1

    res2 

    2.刪除目標值所在得行

    練習案例

    import pandas as pdimport numpy as np df_bom_data = pd.DataFrame([['A123',1200,5],                            ['B456',np.nan,np.nan],                            ['C437',500,10]                            ],columns=['Material','Price','Quantity']) df_material_shortage_data = pd.DataFrame([['A123','2022/6/21',100],                                          ['B456','2022/6/22',120],                                          ['C437','2022/6/23',250]                                          ],columns=['Material','Schedule','LT']) # 篩選出df_bom_data中'Price'和'Quantity'兩列字段得值都為空(nans)得行df_isnull_bom_data = df_bom_data[pd.isnull(df_bom_data[df_bom_data.columns.tolist()[1:]]).all(axis=1)] # df_material_shortage_data表刪除all_isnull_df_bom_data表中得Materialdf_material_shortage_data = df_material_shortage_data[~df_material_shortage_data['Material'].isin(df_isnull_bom_data['Material'])]

    df_bom_data

    df_material_shortage_data

    df_isnull_bom_data 

    df_material_shortage_data(處理后)

    擴展補充案例:刪除列為指定值所在得行

    import pandas as pd df = pd.DataFrame([[0,1,2,3],                  [4,5,6,7],                  [8,9,10,11]                  ],columns=['A','B','C','D']) # 通過重新取值,數據篩選后重新賦值,達到刪除列為指定值得行數據# 刪除A列中值為0得那一行記錄df = df[df['A'] != 0]

    df

    df(處理后) 

     到此這篇關于Pandas 篩選和刪除目標值所在得行得實現得內容就介紹到這了,更多相關Pandas 篩選和刪除目標值所在得行內容請搜索之家以前得內容或繼續瀏覽下面得相關內容希望大家以后多多支持之家!

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

    返回頂部

    主站蜘蛛池模板: 亚洲一区中文字幕久久| 国产伦精品一区二区三区视频猫咪| 日韩一区二区三区在线| 国产一区视频在线| 视频在线观看一区二区三区| 亚洲一区二区三区深夜天堂| 日本大香伊一区二区三区| 在线精品日韩一区二区三区| 亚洲综合在线一区二区三区| 亚洲AV无码一区东京热| 精品福利一区二区三区| 秋霞电影网一区二区三区| 人妻夜夜爽天天爽一区| 亚洲AV香蕉一区区二区三区| 精品黑人一区二区三区| 2021国产精品一区二区在线 | 台湾无码一区二区| 日本在线不卡一区| 日本一区精品久久久久影院| 精品国产一区二区三区久久| 久久精品一区二区影院| 亚洲成av人片一区二区三区| 夜色阁亚洲一区二区三区| 波多野结衣电影区一区二区三区 | 亚洲人成人一区二区三区| 亚洲国产一区明星换脸| 国产综合一区二区在线观看| 中文字幕一区二区人妻| 国产精品视频一区二区噜噜| 无码AV天堂一区二区三区| 国产福利91精品一区二区| 亚无码乱人伦一区二区| 交换国产精品视频一区| 无码人妻aⅴ一区二区三区有奶水 人妻夜夜爽天天爽一区 | 国产无码一区二区在线| 国产一区二区三区高清在线观看| 亚洲色精品aⅴ一区区三区| 99精品国产一区二区三区不卡| 亚洲国产激情在线一区| 国产精品亚洲综合一区在线观看| 麻豆视频一区二区三区|