将代码MATLAB转换为python numpy

rickyhitman10

我不了解Matlab编程,我只了解python中的编码...

在这里我的矩阵要解决

Matlab代码:

 x = ones(3,1).
con = [0.505868045540458,0.523598775598299].
series = [1,2,3] 
for j = 1:2 
   #here stuck to translate Python code#
   x = [x cos(con(j)*series)' sin(con(j)*series)'];
end

结果 :

1.0000    0.8748    0.4846    0.8660    0.5000
1.0000    0.5304    0.8478    0.5000    0.8660
1.0000    0.0532    0.9986   -0.0000    1.0000

任何人都可以帮助我,如何解决这个问题...问候!

hpaulj

我在Ipython会话中的娱乐(首先在Octave会话中测试了您的代码):

In [649]: con = np.array([0.505868, 0.5235897])
In [650]: series = np.array([1,2,3])
In [651]: x = [np.ones((3,))]
In [652]: for j in range(2):
     ...:     x.extend([np.cos(con[j]*series), np.sin(con[j]*series)])
     ...:     
In [653]: x
Out[653]: 
[array([ 1.,  1.,  1.]),
 array([ 0.8747542 ,  0.53038982,  0.05316725]),
 array([ 0.48456691,  0.84775388,  0.99858562]),
 array([  8.66029942e-01,   5.00015719e-01,   2.72267949e-05]),
 array([ 0.49999214,  0.86601633,  1.        ])]
In [654]: np.array(x).T
Out[654]: 
array([[  1.00000000e+00,   8.74754200e-01,   4.84566909e-01,
          8.66029942e-01,   4.99992140e-01],
       [  1.00000000e+00,   5.30389821e-01,   8.47753878e-01,
          5.00015719e-01,   8.66016328e-01],
       [  1.00000000e+00,   5.31672464e-02,   9.98585622e-01,
          2.72267949e-05,   1.00000000e+00]])

在MATLAB中

x = [x cos(...) sin(...)]

更接近

x = np.concatenate([x, cos(...), sin(...)], axis=?)

但是在numpy列表中添加(或在这种情况下扩展)会更快。我只需要初始x选择合适的清单即可。

==================

我可以得到没有循环的相同值

In [663]: y = con[:,None]*series
In [664]: [np.cos(y), np.sin(y)]
Out[664]: 
[array([[  8.74754200e-01,   5.30389821e-01,   5.31672464e-02],
        [  8.66029942e-01,   5.00015719e-01,   2.72267949e-05]]),
 array([[ 0.48456691,  0.84775388,  0.99858562],
        [ 0.49999214,  0.86601633,  1.        ]])]

但是将它们重新排列为迭代产生的顺序有点麻烦[1, cos, sin, cos, sin]

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将代码MATLAB转换为python numpy

来自分类Dev

将Matlab结构转换为python / numpy

来自分类Dev

使用Numpy将MATLAB切片转换为Python

来自分类Dev

使用Numpy将MATLAB切片转换为Python

来自分类Dev

将matlab“查找”转换为“ numpy”,其中

来自分类Dev

将numpy类型转换为python

来自分类Dev

将Python类转换为Numpy数组

来自分类Dev

将 Python For 循环转换为 NumPy 操作

来自分类Dev

将python / numpy“ A.argmin(axis = -1)”转换为等效的matlab表达式

来自分类Dev

如何自动将LaTeX数学模式方程式转换为Python / numpy代码?

来自分类Dev

需要帮助将Matlab的bsxfun转换为numpy

来自分类Dev

需要帮助将Matlab的bsxfun转换为numpy

来自分类Dev

将matlab代码转换为python代码

来自分类Dev

将此numpy代码转换为熊猫代码

来自分类Dev

将此numpy代码转换为熊猫代码

来自分类Dev

将numpy元素转换为numpy dtypes

来自分类Dev

将CSV转换为numpy

来自分类Dev

将Matlab代码转换为python

来自分类Dev

将代码从MATLAB转换为PYTHON的语法

来自分类Dev

将向量化的Matlab代码传输到python,numpy

来自分类Dev

从numpy转换为纯python

来自分类Dev

将Python列表转换为Numpy数组就地

来自分类Dev

Python将列表转换为二维numpy数组

来自分类Dev

将Python序列转换为NumPy数组,填充缺失值

来自分类Dev

递归将python列表转换为numpy.ndarray

来自分类Dev

使用python将numpy数组转换为uint8

来自分类Dev

如何将Python DataFrame转换为NumPy数组

来自分类Dev

Python csv writer,将numpy数组转换为csv

来自分类Dev

python-将数据转换为sklearn的numpy数组