我尝试为某些聚类方法计算先验值。我写了一个没有错误的测试文件。但是主要功能给我一个错误代码。我找不到我的错误。我已经尝试过更改变量名,但这甚至不能解决。我使用Python 3和pycharm。
def initialize_step(data, numberofcluster):
pandadata = pd.DataFrame(data)
totalpoints = len(pandadata)
means_0 = [] #initial mean
priors_0 = [] #initial prior
inversecov_00 = [] #initial inverse cov matrix
for i in range(len(numberofcluster)):
clusterdata = pandadata[pandadata[3] == i] # pick data for cluster
pointsincluster = len(clusterdata) # number of datapoints for the cluster
mean_0 = pd.DataFrame.mean(data.iloc[:, 1:3] # calculate mean for the cluster
prior_0 = pointsincluster / totalpoints # calculate the prior for each cluster
inversecov_0 = np.linalg.inv(pd.DataFrame.cov(data.iloc[:, 1:3]) # calculate the covariance matrix
means_0.append(mean_0)
priors_0.append(prior_0)
inversecov_00.append(inversecov_0)
return means_0,priors_0,inversecov_00
prior_0 = pointsincluster / totalpoints # calculate the prior for each cluster
^
SyntaxError: invalid syntax
您尚未在此行上加上括号:
mean_0 = pd.DataFrame.mean(data.iloc[:, 1:3] # calculate mean for the cluster