【发布时间】:2018-09-05 16:44:06
【问题描述】:
我找到了等效的 numpy 表达式,它等效于 MATLAB 表达式,如下所示:
[1: (arr(foo) - 1), (arr(foo) + 1): K];
其中 foo 和 K 是整数,arr 是 ndarray。 我认为等效代码是这样的:
np.append(np.arange(0, arr[foo] - 1), np.arange((arr[foo]), K))
但是,如果 K 为 2,arr.size 为 2,则这两个表达式不相同。 我认为这是因为 MATLAB 表达式 [1:1] 返回 1,但 np.arange(1,1) 返回空数组。
如何高效地将上述 MATLAB 代码表达为 Python3 代码?
【问题讨论】:
-
使用
concatenate而不是append。并确保个人aranges有效。 -
@hpaulj 作为 python 学习者,问:为什么它的连接比附加更好?
-
查看 np.append 的代码。
-
@hpaulj 是的,它是一个方便的连接...为什么我不使用那个?
标签: python-3.x matlab numpy