Переименовать индекс для нескольких DataFrames - PullRequest
0 голосов
/ 28 марта 2019

У меня есть функция:

def func(df):
    #does stuff
     return df

Возвращенный DataFrame выглядит следующим образом при вводе данных:

     x1   x2   x3 
ret 
vol

Я хочу изменить имя индекса, в данном случае это ret и vol.

Поскольку у меня есть несколько фреймов данных (a, b, c и т. Д.), Для которых я хочу запустить эту функцию, я вручную сделал следующее:

performance_a = (func(a)).rename(index = {'ret':'ret_a','vol':'vol_a'})
performance_b = (func(b)).rename(index = {'ret':'ret_b','vol':'vol_c'})
performance_c = (func(c)).rename(index = {'ret':'ret_b','vol':'vol_c'})
etc...

Конечный результат такой:

     x1   x2   x3 
ret_a 
vol_a

     x1   x2   x3 
ret_b 
vol_b

etc...

Есть ли более простой способ пройти через это?

Приветствия:)

1 Ответ

0 голосов
/ 28 марта 2019

Почему бы вам не добавить изменяющуюся логику индекса в func ()? Или добавить обертку func_b (), которая вызывает func () и применить переименование индекса?

...