动态存储在数组python中

时间:2017-02-09 17:54:26

标签: arrays matlab python-2.7 numpy

我实际上是将matlab脚本翻译成python而我在使用python中的数组时遇到了问题(我还是初学者)numpy。 我的问题是: 在matlab中,我正在计算几个信号的傅里叶变换,我将它动态存储在3×3阵列中,比如说U.我想做的一个简单例子如下:

l = 3 ;
c = 0 ;
for i = 1:3
    for j = 1:10
        c=c+1 ;
        a = j + 1;
        U(i,c,:)=a ;
    end 
end

我想把它翻译成python,我无法创建数组U,动态存储' a'在美国 注意:这是计算' a'为了简单而j + 1,但在我的脚本中' a'是一个数组(信号的傅里叶变换)

抱歉我的英语不好,我是法国人。 Ť

1 个答案:

答案 0 :(得分:0)

我相信你最终会想要这样的东西。其中一个令人困惑的事情是你的循环变量c和j正在做什么。看起来你想要c = j,所以我在下面改了。你需要注意的一件事是python对象从0索引,而Matlab对象是1的索引。所以下面,如果你真的开始检查i和j的值,你会看到它们从0开始。

import numpy
L = 3;
C = 10;
N = 50; # Size of the Fourier array
U = numpy.zeros((L,C,N))
for i in range(L):
    for j in range(C):
        # Create a matrix of scalars, for testing
        a           = i*j*numpy.ones((N,));
        U[i,j,:]    = a;