将matlab翻译成python

佩卡德

我正在尝试翻译一个 matlab 代码,我正在努力翻译这部分代码:

[data;SS(ind-1:-1:ind-9)']

在以下上下文中:

SS = 1:288
year = 1:288
data = [];
for ind = 10:length(year)
    data = [data;SS(ind-1:-1:ind-9)'];
end

我目前所做的是:

SS = range(1,288);
year = range(1,288);

data = [];

for ind in range(10,length(year)):
    data.append(######)   # code to translate
丹尼尔

编辑:(输出校正,错误的参数)

1:288是在 python 中,list(range(1,289))或者如果你使用 numpy numpy.arange(1,289)

对于索引访问,您必须知道,matlab 以 1 开头,python 以 0 开头,因此SS(ind-1:-1:ind-9)变为SS[ind-2:ind-11:-1]

SS = list(range(1,289))
data = []
for ind in range(9,len(SS)):
    data.append(SS[ind-9:ind][::-1])

或使用 numpy:

data = numpy.arange(9,0,-1)[None,:] + numpy.arange(279)[:, None]

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章