How can I convert the following code without using the loop, using pythonic pandas :
import pandas as pd
xls = pd.ExcelFile('...')
df_1 = pd.read_excel(xls, '...')
df_2 = pd.read_excel(xls, '...')
df_1_len = len(df_1)
results = np.empty(df_1_len)
for idx in range(df_1_len):
    results[idx] = df_2.at[df_1['x'][idx], df_1['y'][idx]]
df_1 looks like :
| x | y | 
|---|---|
| 1 | a | 
| 2 | a | 
| 2 | b | 
| ... | ... | 
df_2 looks like :
| 1 | 2 | .. | |
|---|---|---|---|
| a | val(1,a) | val(2,a) | .. | 
| b | val(1,n) | val(2,a) | .. | 
| ... | ... | ... | 
 
    