计算数据和列表特征之间的所有差异时出现问题

2024-04-19 10:25:52 发布

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

假设我们有一些数据包含样本编号0,1,2,...,9的特征,还有一个列表y,其中包含对应于每个原始数据的0,1,...,9标签。这些数据有维度(2006,256),其中256是特征,2006是样本编号

此外,我们还给出了0,1,2,...,9作为v0,v1,v2,...,v9的平均值,其中每个v0,v1,...,v9都有维数(1,256)

我想计算所有2006样本和v0,v1,v2,...,v9样本之间的欧氏差,以便进行分类

为了做到这一点,我必须为每个样本取特征和v0,v1,v2,...,v9之间的差异。例如,对于样本1,我必须取256特征和v0之间的差异,然后用v1等等,然后找到min的差异

我定义ListV=[v0,v1,v2,...,v9] 我的密码是

diff=[]
ListV=[v0,v1,v2,v3,v4,v5,v6,v7,v8,v9]
for j in range(0,10):
    i=np.where(y==j)
    for k in range(0,len(i[0][:])):
        for l in range(0,9-j):
            diff.append(distance.euclidean(ListV[j+l],data[i[0][k],:]))

但是这个代码忽略了许多欧几里德的差异

我想得到一些帮助,以解决这个问题,并找到所有的差异


Tags: 数据in列表fordiffrange特征差异