如何在python中迭代创建具有不同名称的向量

2024-09-30 14:24:06 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个pandasdata.frame

temp = pd.DataFrame({'country':['C1','C1','C1','C1','C2','C2','C2','C2'],
                     'seg':    ['S1','S2','S1','S2','S1','S2','S1','S2'],
                     'agegroup':    ['1', '2', '2', '1','1', '2', '2', '1'],
                      'N' : [21,22,23,24,31,32,33,34]})

一个向量,比如

vector = ['country', 'seg']

我要做的是创建两个名为vector_countryvector_seg的向量,它们将包含temp的相应列,在本例中是countryseg

我试过了

for vec in vector:
    'vector_' + str(vec) = temp[[vec]]

最后我想用两个向量来结束:

vector_country,它将包含temp.country

vector_seg,它将包含temp.seg

有没有可能在python中做这样的事情?你知道吗


Tags: dataframe向量framecountrytemppdvectorc2
1条回答
网友
1楼 · 发布于 2024-09-30 14:24:06

不要尝试动态命名变量。这是不好的做法,会使您的代码难以处理。你知道吗

更好的选择是使用字典,如下所示:

v = {}

for vec in ['country', 'seg']:
    v[vec] = temp[vec].values

相关问题 更多 >