Olá @gustavomadmax
Uma coisa legal para ajudar os colegas é sempre que possível publicar qual a ferramenta ou linguagem de programação da sua duvida e também um resumo dos seus dados, assim eles podem compreender melhor e responder mais rápido
Você está usando numpy (pacote de funções matemáticas do Python), correto? No Python o comando merge do pandas acho que poderia até ser mais simples
import pandas as pd
# No lugar dos seus CSVs vou representar aqui dois dataframes
# Os dois têm uma chave de string em comum - a coluna "nome"
# Dataframe1
dicionario = {"idade": [89, 12, 40, 31],
"time": ["Portuguesa", "São Paulo", "Flamengo", "Corinthians"],
"nome": ["Joaquim Oliveira", "Carlos da Silva", "Chico dos Santos", "Claudia Schultz"],
}
df_1 = pd.DataFrame(dicionario)
# Dataframe2
dicionario = {"sexo": ["feminino", "masculino", "masculino", "feminino"],
"veiculo": ["bicicleta", "patinete", "carro", "carro"],
"nome": ["Maria Souza", "Carlos da Silva", "Chico dos Santos", "Claudia Schultz"],
}
df_2 = pd.DataFrame(dicionario)
# Agora eu uno os dois dataframes, apenas nos casos que possuem nomes iguais
novo_df = pd.merge(df_1, df_2, left_on='nome', right_on='nome')
novo_df.info()
<class 'pandas.core.frame.DataFrame'>
Int64Index: 3 entries, 0 to 2
Data columns (total 5 columns):
# Column Non-Null Count Dtype
--- ------ -------------- -----
0 idade 3 non-null int64
1 time 3 non-null object
2 nome 3 non-null object
3 sexo 3 non-null object
4 veiculo 3 non-null object
dtypes: int64(1), object(4)
memory usage: 96.0+ bytes
Aqui mais sobre a documentação do merge