如何根据字典键定义变量名?

时间:2018-10-13 03:53:25

标签: python pandas numpy dictionary

我正在基于给定字典的值运行循环以对表进行切片。但是我想为每个循环创建一个表,并使用字典的键保存表。在下面的示例中,我想在表名df_slice中输入“键”,例如df_slice_loc1,df_slice_loc2

import numpy as np
import pandas as pd

df = pd.DataFrame({'group': ['A', 'B', 'C', 'D', 'E']
                  ,'scoreA': np.random.randn(5)
                  ,'scoreB': np.random.randn(5)})


loc_d = {"loc1":2, "loc2":3}

for key, value in loc_d.items():
    df_slice = df.iloc[:value,]

1 个答案:

答案 0 :(得分:0)

为可变数量的变量使用字典

例如,使用dictionary comprehension

df_slice = {key: df.iloc[:value] for key, value in loc_d.items()}

print(df_slice)

{'loc1':   group    scoreA    scoreB
0     A  0.139625 -0.321823
1     B  2.137781  0.103702,

 'loc2':   group    scoreA    scoreB
0     A  0.139625 -0.321823
1     B  2.137781  0.103702
2     C -1.000334  0.680955}

然后通过df_slice['loc2']访问切片。