No meu conjunto de dados, tenho duas colunas categóricas que gostaria de numerar. As duas colunas contêm países, algumas se sobrepõem (aparecem nas duas colunas). Gostaria de fornecer o mesmo número na coluna1 e na coluna2 para o mesmo país.
Meus dados são parecidos com:
import pandas as pd
d = {'col1': ['NL', 'BE', 'FR', 'BE'], 'col2': ['BE', 'NL', 'ES', 'ES']}
df = pd.DataFrame(data=d)
df
Atualmente estou transformando os dados como:
from sklearn.preprocessing import LabelEncoder
df.apply(LabelEncoder().fit_transform)
No entanto, isso não faz distinção entre FR e ES. Existe outra maneira simples de obter a seguinte saída?
o = {'col1': [2,0,1,0], 'col2': [0,2,4,4]}
output = pd.DataFrame(data=o)
output