У меня есть два MultiIndex DataFrames
![df1](https://i.stack.imgur.com/BPBX5.png)
и
![df2](https://i.stack.imgur.com/KQTfh.png)
и хочу умножить их так, чтобы я произвел:
![enter image description here](https://i.stack.imgur.com/WzUlk.png)
Как я могу сделать это вообще?Обратите внимание, что может быть произвольное количество foo
переменных, каждая из которых может содержать произвольные числа bar
переменных.
Ниже приведен код для воспроизведения двух исходных фреймов данных, df_1
и df_2
:
vals_1 = pd.np.random.rand(2, 4) * 100
tuples_1 = [('A', 'P'), ('A', 'Q'), ('B', 'R'), ('B', 'S')]
idx_1 = pd.MultiIndex.from_tuples(tuples_1, names=['foo', 'bar'])
df_1 = pd.DataFrame(vals_1, columns=idx_1)
rs = pd.np.random.rand(2, 1)
rs2 = pd.np.random.rand(2, 1)
vals_2 = pd.np.concatenate([rs, 1 - rs, rs2, 1 - rs2], axis=1)
tuples_2 = [('A', 'spam'), ('A', 'eggs'), ('B', 'spam'), ('B', 'eggs')]
idx_2 = pd.MultiIndex.from_tuples(tuples_2, names=['foo', 'qux'])
df_2 = pd.DataFrame(vals_2, columns=idx_2)