我有一个ndarray qnt
,它由7个权重(列)和成千上万个样本(行)组成。数组中只有25个不同的权重向量。数据帧df
存储25个权重向量中的每一个。我想根据整数标签1到25映射数组中的每个向量,以获得长度为qnt
的整数数组。一种实用但越来越慢的方法如下:
cnt = 1
#for each weight vector j in the dataframe
for j in df:
# for each weight vector in the array, if it matches vector j, label it 'cnt'
inx = [[i for i,row in enumerate(qnt[:,0:7]) if (j==row).all()]]
qnt[inx,7] = np.int64(cnt)
cnt = cnt+1
我已经考虑过尝试使用字典,但是对于如何将字典值数组与ndarray匹配,我有些困惑。类似于:
[mydict[j] for j in qnt]
但也许我是一个大森林里的迷茫狗。任何帮助将不胜感激。