Я думаю, что есть некоторые проблемы при назначении индекса и значений. Я сделал mcve , и в моем случае работает следующий код
import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.randn(6,4),
columns=["A1", "A2","B1", "B2"])
cols_index = list(df.columns[~df.columns.str.startswith('A')])
cols_values = list(df.columns[ df.columns.str.startswith('A')])
pd.pivot_table(df, index=cols_index, values=cols_values)
В случае, если для вашего df
это не сработает, попробуйте добавить образец ваших данных.