我有pandas
data.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_country
和vector_seg
的向量,这两个向量将包含temp
的相应列,在本例中为country
列和seg
我试过了
for vec in vector:
'vector_' + str(vec) = temp[[vec]]
所以最后我想得到两个向量:
vector_country
,其中包含temp.country
和
vector_seg
,其中包含temp.seg
是否可以在python
中执行类似的操作?
答案 0 :(得分:2)
不要尝试动态命名变量。这是不好的做法,会使你的代码难以处理。
更好的选择是使用字典,如下:
v = {}
for vec in ['country', 'seg']:
v[vec] = temp[vec].values