Я думаю, что это может помочь немного объяснить вещи.
Обновление имен столбцов одного фрейма данных Pandas из столбца другого фрейма данных
Начать с фрейма данных
df_pokemon = pd.DataFrame({
"A": ["Eevee", "Vaporeon", "Flareon"],
"C": ["Pichu", "Pikachu", "Raichu"]})
Создает фрейм данныхкоторый выглядит так

Создайте фрейм данных с именами меток
df_labels = pd.DataFrame({
"X": ["Pikachu_line", "Eevvee_line"]})
Создает фрейм данных, который выглядит следующим образом

Я могу использовать столбец X из df_labels для замены имен столбцов в df_pokemon
df_pokemon.columns = df_labels['X'].tolist()
Таким образом

Как изменить порядок столбцов в одном кадре данных на основе данных в столбце другого кадра
Пусть, скажем, хотитечтобы переключить столбцы в df_pokemon, мы можем сделать это.
Я создал новый df_labels с обновленным порядком (пикачу и иви поменялись местами)
df_labels = pd.DataFrame({"X": ["Pikachu_line", "Eevvee_line"]})
Я могу использовать эти данные в столбце X для указания порядка в df_pokemon
df_pokemon[df_labels['X'].tolist()]
Вы увидите, как изменился порядок столбцов
