首页 > Python 科学计算:怎么设定规划求解的目标?

Python 科学计算:怎么设定规划求解的目标?

不知道合适的关键词是什么,我试着说说把

数据如上,用到speed, degree, x, y
具体的目标,是求解一个角度alpha,使得按这个坐标旋转后的新数据(x-y变换成u-v),u-v的相关系数为0

这个不知道在Python里面应该怎么实现?一般是怎么处理这样的问题的?
EXCEL里面有个规划求解器,好像就是专门干这个事的,不知道Python(Scipy)里有没有相关的?
我自己写的是:

cors = []
for alpha in np.arange(0,360,10):
    df['theta'] = df['degree'] - alpha
    df['u']=df.apply(lambda x: x['speed'] * math.cos(math.radians(x['theta'])),axis=1)
    df['v']=df.apply(lambda x: x['speed'] * math.sin(math.radians(x['theta'])),axis=1) 
    cor = sp.stats.pearsonr(df.u,df.v)
    cors.append(cor)
    print cor

主要问题就是,这样计算速度太慢了,xy有7000个数据。


用C的计算库提高性能

【热门文章】
【热门文章】