Python 无法将矩阵添加到元组
python和numpy新手,搜索并尝试了所有可能的解决方案,但没有得到结果 我有一个返回2个矩阵的函数。我想创建一个或多个矩阵,保存函数返回的每个矩阵。我已经做了很多不同的版本,这是最接近的。我习惯于java而不是python。如果执行以下操作:Python 无法将矩阵添加到元组,python,arrays,numpy,matrix,tuples,Python,Arrays,Numpy,Matrix,Tuples,python和numpy新手,搜索并尝试了所有可能的解决方案,但没有得到结果 我有一个返回2个矩阵的函数。我想创建一个或多个矩阵,保存函数返回的每个矩阵。我已经做了很多不同的版本,这是最接近的。我习惯于java而不是python。如果执行以下操作:centroidsm[0]和clustersm[0],则无法获取每个单独的数组 这是我的代码: centroidsm = [] centroidsm.append([]) clustersm = [] clustersm.append([]) for
centroidsm[0]
和clustersm[0]
,则无法获取每个单独的数组
这是我的代码:
centroidsm = []
centroidsm.append([])
clustersm = []
clustersm.append([])
for k in range(2,20):
centroids, clusters = kMeans(train, k)
centroidsm[k].append(centroids)
clustersm[k].append(clusters)
首先,我不知道为什么要将空数组附加到
centroidsm
。你应该去掉那些台词
其次,如果质心应该是质心矩阵的数组,则只需在for循环中调用centroidism.append(centroids)
(centroidism[k]。append
尝试在索引k处追加数组-一个不存在的数组)
我在()2中不断从错误索引器中获取索引,并对范围(2,20)内的j进行回溯(最近一次调用):3个质心,簇=kMeans(train,j)--->4个质心[j]。追加(质心)5个簇[j]。追加(簇)索引器错误:列表索引超出范围我之所以要在其中输入k,是因为我希望能够单独访问每个质心矩阵。如果我只做centroidsm.append(centroids),我只能调用所有的质心数组而不是特定的数组一旦你建立了数组,你就可以用
centroidism[k]
访问特定的矩阵。当然你会得到索引器:当for循环开始时,你的centroidsm
列表的长度为1,然后你尝试访问它的第三个元素(index=2)。太好了!以前它不工作,但你的建议起了作用。谢谢你!在我只能访问centroidm[0]之前,它会包含所有的htem。谢谢你!!!我只需要更多地了解python。我太习惯java了
centroidsm = []
clustersm = []
for k in range(2,20):
centroids, clusters = kMeans(train, k)
centroidsm.append(centroids)
clustersm.append(clusters)