import pandas as pd df1 = pd.read_excel('output.xlsx') df2 = pd.read_excel('Amazon CDW5_Devices IO.xlsx') print('=== Sample comparisons ===') dev_rows = df1[df1['Description'].str.upper() == 'DEVICE'].head(20) for idx, row in dev_rows.iterrows(): src = df2[(df2['Controller name'] == row['Controller name']) & (df2['Signal type'] == row['Signal type']) & (df2['Assigned device'] == row['Assigned device'])] if not src.empty: print(f"Device: {row['Assigned device']}") print(f" Output desc: {row['Description']}") print(f" Source desc: {src.iloc[0]['Description']}") print() else: # Try partial match src = df2[(df2['Assigned device'] == row['Assigned device'])] if not src.empty: print(f"Device: {row['Assigned device']}") print(f" Output desc: {row['Description']}") print(f" Source desc (found by device only): {src.iloc[0]['Description']}") print()