2022-12-25

How to match more than 2 side by side

I'm currently using python and having trouble finding a code. I have 2 data frames that I would like to match more than 2 numbers that match side by side. For example, I would like to lookup the numbers in df1 and find more than 2 numbers match side by side in df2.

import pandas as pd 
cols = ['Num1','Num2','Num3','Num4','Num5','Num6']
df1 = pd.DataFrame([[2,4,6,8,9,10]], columns=cols)

df2 = pd.DataFrame([[1,1,2,4,5,6,8],
           [2,5,6,20,22,23,34],
           [3,8,12,13,34,45,46],
           [4,9,10,14,29,32,33],
           [5,1,22,13,23,33,35],
           [6,1,6,7,8,9,10],
           [7,0,2,3,5,6,8]], 
           columns = ['Id','Num1','Num2','Num3','Num4','Num5','Num6'])

I would like my results to be something like this.

results = pd.DataFrame([[6,1,6,7,8,9,10]],             
       columns = ['Id', 'Num1','Num2','Num3','Num4','Num5','Num6']) 

You can see Id 6 or index 6 has 8,9,10. More than 2 number match side by side.



No comments:

Post a Comment