Как переименовать столбец списка данных Pandas с другим именем - PullRequest
0 голосов
/ 26 марта 2020

У меня есть три кадра данных со столбцом с одинаковым именем ("col_0") во всех трех dfs:

>>> df_a

    Date        col_0
0   1/22/2020   4.0
1   1/23/2020   1.2

>>> df_b

    Date        col_0
0   1/22/2020   4.1
1   1/23/2020   1.3

>>> df_c

    Date        col_0
0   1/22/2020   4.2
1   1/23/2020   1.5

Я хочу переименовать каждый столбец в каждом df с другим именем в списке имена new = ["A","B","C"] с использованием al oop, но я не смог этого сделать. Я уже пытался использовать список понимания для именования каждого столбца, но я получаю 9 фреймов данных (три из каждого фрейма данных с новыми именами из нового списка).

>>> [i.rename(columns={'col_0':j}) i for i in [df_a,df_b,df_c] for j in ["A","B","C"]]

Но вывод, который мне действительно нужен:

>>> df_a

    Date        A
0   1/22/2020   4.0
1   1/23/2020   1.2

>>> df_b

    Date        B
0   1/22/2020   4.1
1   1/23/2020   1.3

>>> df_c

    Date        C
0   1/22/2020   4.2
1   1/23/2020   1.5

Любые идеи, как я могу получить этот вывод. Прежде всего, спасибо.

Ответы [ 2 ]

1 голос
/ 26 марта 2020

IIU C

df_a,df_b,df_c=[i.rename(columns={'col_0':j}) for i, j in zip([df_a,df_b,df_c],["A","B","C"])]
df_a
Out[565]: 
        Date    A
0  1/22/2020  4.0
1  1/23/2020  1.2
0 голосов
/ 26 марта 2020

Попробуйте использовать вложенные циклы:

columns = ['A', 'B', 'C']
dfs = [df_1, df_2, df_3]

for column in columns:
    for df in dfs:
        df.rename(columns={'col_0': column})
...