Python列表附加颠簸的数组错误

时间:2018-07-20 18:46:35

标签: python numpy

我正在尝试使用列表追加功能将列表追加到列表。

但是出现错误,显示列表索引必须是整数或切片,而不是元组。不知道为什么。

pca_components = range(1,51)
gmm_components = range(1,5)
covariance_types = ['spherical', 'diag', 'tied', 'full']

# Spherical
spherical_results = []
for i in pca_components:
    pca_model = PCA(n_components=i)
    pca_train = pca_model.fit(train_data).transform(train_data)
    for j in gmm_components:
        parameters = (i+i)*j*2
        if parameters > 50:
            pass
        else:             
            gmm_model = GMM(n_components=j, covariance_type='spherical')
            gmm_model.fit(pca_train)
            pca_test = pca_model.transform(test_data)
            predictions = gmm_model.predict(pca_test)
            accuracy = np.mean(predictions.ravel() == test_labels.ravel())
            accuracy=int(accuracy)
            spherical_results.append([accuracy, i,j, parameters])
spher_results = np.array(spherical_results)
max_accuracy = np.amax(spherical_results[:,0])
print(f"highest accuracy score for spherical is {max_accuracy}")

1 个答案:

答案 0 :(得分:1)

此行的目的是什么?

spher_results = np.array(spherical_results)

它从列表中创建一个数组。但是,在下面的代码中不要使用spher_results