[Python] pandas que emparejan y empalman dos columnas de Excel

En el proceso de procesamiento de una gran cantidad de coincidencia de datos en Excel, aunque se puede utilizar vlookup, cuando el volumen de datos supera los 100.000 para la coincidencia por lotes, la eficiencia es muy baja, por lo que se utiliza Python. Después de la investigación, se descubre que Python puede lograr una función similar a unirse en SQL mediante la fusión de la biblioteca de pandas. Para obtener más detalles, consulte lo siguiente:

 

https://pandas.pydata.org/pandas-docs/stable/getting_started/comparison/comparison_with_sql.html#compare-with-sql-join

 

import pandas as pd
import numpy as np

# %%
with pd.ExcelFile('xx.xlsx') as xls:
    df1 = pd.read_excel(xls,'Sheet1')
    df2 = pd.read_excel(xls,'Sheet2')

outer=pd.merge(df1,df2,on='key')

outer.to_excel('outer_function.xlsx',index=False,encoding='utf-8')

Finalmente, realice la coincidencia y el empalme de Sheet1 y Sheet2 en función del mismo campo clave.

No sé por qué, el método anterior siempre es más o menos. Para hacer coincidir en orden, puedo agregarlo manualmente si hay omisiones. Se usa el siguiente método. Entre ellos, el formato de resultado y el orden de contenido se basan en df1 Básicamente, es conveniente copiar directamente los datos que faltan en df1 y complementarlos.

outer=pd.merge(df1.drop_duplicates(),df2.drop_duplicates(),left_on='链接',right_on='链接',how='outer')

outer.to_excel(r'H:\e\outer_function3.xlsx',index=False,encoding='utf-8')

 

Supongo que te gusta

Origin blog.csdn.net/u010472858/article/details/106196854
Recomendado
Clasificación