淺談pandas篩選出表中滿足另一個表所有條件的數(shù)據(jù)方法
今天記錄一下pandas篩選出一個表中滿足另一個表中所有條件的數(shù)據(jù)。例如:
list1 結構:名字,ID,顏色,數(shù)量,類型。
list1 = [['a',1,255,100,'03'],['a',2,481,50,'06'],['a',47,255,500,'03'],['b',3,1,50,'11']]
list2結構:名字,類型,顏色。
list2 = [['a','03',255],['a','06',481]]
如何在list1中找出所有與list2中匹配的元素?要得到下面的結果:list = [['a',1,255,100,'03'],['a',2,481,50,'06'],['a',47,255,500,'03']]。
首先將兩個list轉化為dataframe.
list1 = [['a',1,255,100,'03'],['a',2,481,50,'06'],['a',47,255,500,'03'],['b',3,1,50,'11']] df1=pd.DataFrame(list1,columns=["名字","ID","顏色","數(shù)量","類型"]) list2 = [['a','03',255],['a','06',481]] df2=pd.DataFrame(list2,columns=["名字","類型","顏色"])
數(shù)據(jù)結構如下:

然后利用pandas.merge函數(shù)將其進行內連接。
這個函數(shù)的語法是:
pd.merge(left, right, how='inner', on=None, left_on=None, right_on=None, left_index=False, right_index=False, sort=False, suffixes=('_x', '_y'), copy=True, indicator=False, validate=None)。這函數(shù)連接方式和sql的連接類似,由參數(shù)how來控制。
最后的代碼如下:
import pandas as pd list1 = [['a',1,255,100,'03'],['a',2,481,50,'06'],['a',47,255,500,'03'],['b',3,1,50,'11']] df1=pd.DataFrame(list1,columns=["名字","ID","顏色","數(shù)量","類型"]) list2 = [['a','03',255],['a','06',481]] df2=pd.DataFrame(list2,columns=["名字","類型","顏色"]) df=pd.merge(df1,df2,how='inner',on=["名字","類型","顏色"],right_index=True) df.sort_index(inplace=True) print(df)
返回結果按照左表的順序輸出:

以上這篇淺談pandas篩選出表中滿足另一個表所有條件的數(shù)據(jù)方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
- pandas按條件篩選數(shù)據(jù)的實現(xiàn)
- 使用pandas實現(xiàn)篩選出指定列值所對應的行
- 使用pandas庫對csv文件進行篩選保存
- pandas條件組合篩選和按范圍篩選的示例代碼
- 使用Pandas對數(shù)據(jù)進行篩選和排序的實現(xiàn)
- pandas數(shù)據(jù)篩選和csv操作的實現(xiàn)方法
- pandas篩選某列出現(xiàn)編碼錯誤的解決方法
- pandas數(shù)據(jù)處理基礎之篩選指定行或者指定列的數(shù)據(jù)
- pandas系列之DataFrame 行列數(shù)據(jù)篩選實例
- pandas按若干個列的組合條件篩選數(shù)據(jù)的方法
- pandas 按日期范圍篩選數(shù)據(jù)的實現(xiàn)
相關文章
我對PyTorch dataloader里的shuffle=True的理解
這篇文章主要介紹了我對PyTorch dataloader里的shuffle=True的理解,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-05-05
Keras 中Leaky ReLU等高級激活函數(shù)的用法
這篇文章主要介紹了Keras 中Leaky ReLU等高級激活函數(shù)的用法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-07-07
Pycharm報錯:'NoneType'?object?has?no?attribute?
這篇文章主要給大家介紹了關于Pycharm報錯:'NoneType'?object?has?no?attribute?'bytes'的解決方法,文中通過圖文將解決的方法介紹的非常詳細,需要的朋友可以參考下2022-02-02
深入理解python中函數(shù)傳遞參數(shù)是值傳遞還是引用傳遞
這篇文章主要介紹了深入理解python中函數(shù)傳遞參數(shù)是值傳遞還是引用傳遞,涉及具體代碼示例,具有一定參考價值,需要的朋友可以了解下。2017-11-11

