淺談pandas篩選出表中滿足另一個(gè)表所有條件的數(shù)據(jù)方法
今天記錄一下pandas篩選出一個(gè)表中滿足另一個(gè)表中所有條件的數(shù)據(jù)。例如:
list1 結(jié)構(gòu):名字,ID,顏色,數(shù)量,類型。
list1 = [['a',1,255,100,'03'],['a',2,481,50,'06'],['a',47,255,500,'03'],['b',3,1,50,'11']]
list2結(jié)構(gòu):名字,類型,顏色。
list2 = [['a','03',255],['a','06',481]]
如何在list1中找出所有與list2中匹配的元素?要得到下面的結(jié)果:list = [['a',1,255,100,'03'],['a',2,481,50,'06'],['a',47,255,500,'03']]。
首先將兩個(gè)list轉(zhuǎn)化為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ù)結(jié)構(gòu)如下:

然后利用pandas.merge函數(shù)將其進(jìn)行內(nèi)連接。
這個(gè)函數(shù)的語(yǔ)法是:
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來(lái)控制。
最后的代碼如下:
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)
返回結(jié)果按照左表的順序輸出:

以上這篇淺談pandas篩選出表中滿足另一個(gè)表所有條件的數(shù)據(jù)方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- pandas按條件篩選數(shù)據(jù)的實(shí)現(xiàn)
- 使用pandas實(shí)現(xiàn)篩選出指定列值所對(duì)應(yīng)的行
- 使用pandas庫(kù)對(duì)csv文件進(jìn)行篩選保存
- pandas條件組合篩選和按范圍篩選的示例代碼
- 使用Pandas對(duì)數(shù)據(jù)進(jìn)行篩選和排序的實(shí)現(xiàn)
- pandas數(shù)據(jù)篩選和csv操作的實(shí)現(xiàn)方法
- pandas篩選某列出現(xiàn)編碼錯(cuò)誤的解決方法
- pandas數(shù)據(jù)處理基礎(chǔ)之篩選指定行或者指定列的數(shù)據(jù)
- pandas系列之DataFrame 行列數(shù)據(jù)篩選實(shí)例
- pandas按若干個(gè)列的組合條件篩選數(shù)據(jù)的方法
- pandas 按日期范圍篩選數(shù)據(jù)的實(shí)現(xiàn)
相關(guān)文章
我對(duì)PyTorch dataloader里的shuffle=True的理解
這篇文章主要介紹了我對(duì)PyTorch dataloader里的shuffle=True的理解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-05-05
Python量化因子測(cè)算與繪圖超詳細(xì)流程代碼
這篇文章主要介紹了Python量化因子測(cè)算與繪圖,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧2023-02-02
Keras 中Leaky ReLU等高級(jí)激活函數(shù)的用法
這篇文章主要介紹了Keras 中Leaky ReLU等高級(jí)激活函數(shù)的用法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-07-07
Pycharm報(bào)錯(cuò):'NoneType'?object?has?no?attribute?
這篇文章主要給大家介紹了關(guān)于Pycharm報(bào)錯(cuò):'NoneType'?object?has?no?attribute?'bytes'的解決方法,文中通過(guò)圖文將解決的方法介紹的非常詳細(xì),需要的朋友可以參考下2022-02-02
關(guān)于Python中Inf與Nan的判斷問(wèn)題詳解
這篇文章主要介紹了關(guān)于Python中Inf與Nan的判斷問(wèn)題,文中介紹的很詳細(xì),對(duì)大家具有一定的參考價(jià)值,有需要的朋友們下面來(lái)一起看看吧。2017-02-02
python多線程http下載實(shí)現(xiàn)示例
python多線程http下載實(shí)現(xiàn)示例,大家參考使用吧2013-12-12
python的即時(shí)標(biāo)記項(xiàng)目練習(xí)筆記
這篇文章主要介紹了python的即時(shí)標(biāo)記項(xiàng)目練習(xí)筆記,本文是閱讀《python基礎(chǔ)教程》一書的動(dòng)手實(shí)踐項(xiàng)目,需要的朋友可以參考下2014-09-09
深入理解python中函數(shù)傳遞參數(shù)是值傳遞還是引用傳遞
這篇文章主要介紹了深入理解python中函數(shù)傳遞參數(shù)是值傳遞還是引用傳遞,涉及具體代碼示例,具有一定參考價(jià)值,需要的朋友可以了解下。2017-11-11

