首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何更高效地将集群写入文件?

如何更高效地将集群写入文件?
EN

Stack Overflow用户
提问于 2019-04-10 08:14:55
回答 1查看 59关注 0票数 1

这是一个有点愚蠢的问题,但基本上我使用k-means将我的数据划分为不同的集群,这是为了一个班级项目btw。我已经完成了所有的工作,但是我必须将我的集群写到每个输入的文件中,以便对其进行测试。我的实际代码大约需要2-3分钟来运行,但它需要大约10分钟才能写入文件。我有10,000个输入/输出,目前我的运行时间大约是n^3。对于赋值而言,时间并不重要,但我想知道是否有人可以帮助我优化它,我知道有不同的Python迭代技巧,我不知道哪些技巧可以加快速度。

我的k是10,所以我有10个质心,基本上我选择数组,然后选择其中一个质心,检查它是否有数组,如果没有,我就移动到下一个质心,依此类推。我对每10,000个输入执行此操作,这需要很长时间。代码效率不是很高

file = open("image.txt", "w")
    for point in array:
        for x in range(len(centroids)):
            for i in centroids[x]:
                if np.array_equal(point,i):
                    file.write(str(x+1)+"\n")
    file.close()
EN

回答 1

Stack Overflow用户

发布于 2019-04-10 08:45:13

好吧,让我试着清理一些东西。如果我说的任何话都不适用,请评论并让我知道。此外,如果你必须检查所有的东西,那么你可能无法简化计算。

with open("image.txt", "w") as file:
   for point in array:
      for centroid_index, centroid in enumerate(centroids):
         for centroid_point in centroid:
            if np.array_equal(point,centroid_point):
               file.write(str(centroid_index+1)+"\n")

如果您能解释一下arraycentroids的对象类型,以及您试图为我写到文件中的内容,那么我可以给出一些更具体的方法。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55602975

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档