我是python初学者,我正在实现一个k-means版本。你知道吗
我正在定义k-means类,其中一个类属性是__class
,其中__class[i] = j
表示第i
个数据点被分配给第j
个集群。这意味着如果我们有n
数据点和k
集群,那么0 <= __class[i] < k
对于每个i in range(n)
。你知道吗
现在,我想做的(为了防止错误)是,如果我们执行__class[i] = impossibleK
,其中impossibleK < 0 V impossibleK >= k
和i in range(n)
之类的操作,则引发一个异常。简而言之,我希望每当我们将一个不可能的集群分配给__class
的元素时,就会抛出异常。你知道吗
如何在Python中自动执行此检查?你知道吗
这是类和构造函数:
import numpy as np
class CLUMPY:
def __init__(self, k, file):
# input file
self.__file = file
print("k=",k)
print("Reading {}...".format(file))
# data points
self.__points = np.loadtxt(file)
# number of data points
self.__n = self.__points.shape[0]
# data points dimensionality (or length according to numpy terminology)
self.__d = self.__points.shape[1]
print("Read {}: {} points in {} dimensions.".format(file, self.__n, self.__d))
# __class[i] = j : the i-th data point is assigned to the j-th cluster
self.__class = np.zeros(self.__n, dtype=np.int8)
if __name__ == "__main__":
clumpy = CLUMPY(2, "datasets/202d")
您可以在python中使用错误处理。。。你知道吗
相关问题 更多 >
编程相关推荐