methods_kharita.py 文件源码

python
阅读 39 收藏 0 点赞 0 评论 0

项目:kharita 作者: vipyoung 项目源码 文件源码
def newmeans(datapointwts,seeds,theta):
    newseeds = []; cost = 0; avgspeed = []; pointsperseed = [];
    cluster, p2cluster = point2cluster(datapointwts, seeds,theta);
    for cd in cluster:
        if len(cluster[cd])>0:
            hh = np.arctan2(sum([np.sin(xx[2]/360*2*np.pi) for xx in cluster[cd]]),sum([np.cos(xx[2]/360*2*np.pi) for xx in cluster[cd]]))*180/np.pi
            newseeds.append((np.mean([xx[0] for xx in cluster[cd]]),np.mean([xx[1] for xx in cluster[cd]]),hh))
            hh = [xx[3] for xx in cluster[cd] if xx[3]>0];
            if len(hh)<1:
                hh = [0]
            avgspeed.append(np.mean(hh))
            cost = cost+sum([taxidist(xx,newseeds[-1],theta) for xx in cluster[cd]])
        else:
            newseeds.append(seeds[cd])
            avgspeed.append(0)
        pointsperseed.append(len(cluster[cd]))
    return(newseeds,cost,avgspeed,pointsperseed)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号