计算 kmeans 算法的核密度估计
calculate kernel density estimation for kmeans algorithm
我被要求使用 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)
这是我试过的,有谁知道我在做什么?
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)