Python 计算kmeans算法的核密度估计

Python 计算kmeans算法的核密度估计,python,numpy,k-means,kde,Python,Numpy,K Means,Kde,我被要求使用np.linalg.norm根据概率密度函数计算K(z) 这就是我尝试过的,有人知道我在做什么吗 def kernel(z): # z: (N, 2) numpy.array # returns (N, 1) numpy.array k_zee=[] for i in range (0,len(z)): dat=z[i] norm=LA.norm(dat, ord=2) k_zee.append((1/(np.sqrt(2*math.pi)))**(-(no

我被要求使用np.linalg.norm根据概率密度函数计算K(z)

这就是我尝试过的,有人知道我在做什么吗

def kernel(z):
# z: (N, 2) numpy.array
# returns (N, 1) numpy.array

k_zee=[]
for i in range (0,len(z)):
    dat=z[i]
    norm=LA.norm(dat, ord=2)
    k_zee.append((1/(np.sqrt(2*math.pi)))**(-(norm/2)))
return np.array(k_zee)

将**替换为np.exp:

此外,缩进错误-在def行之后,所有代码都应该缩进一次

def kernel(z):
# z: (N, 2) numpy.array
# returns (N, 1) numpy.array
    k_zee=[]
    for i in range (0,len(z)):
        dat=z[i]
        norm=np.linalg.norm(dat, ord=2)
        k_zee.append((1/(np.sqrt(2*math.pi)))*np.exp(-(norm**2/2)))
    return np.array(k_zee)

谢谢进行了更正,但自动签名器仍然显示为不正确。非常感谢。问题到底是什么?基于上面的内核函数实现K(z)。返回形状为(500,)的numpy数组。找到它。范数平方。现在试试。