【问题标题】:How to select a small part of very large vector in time?如何及时选择非常大向量的一小部分?
【发布时间】:2025-12-11 10:40:01
【问题描述】:

我有一个名为 stim 的向量。向量的长度为 len(stim)=600000。随着时间的推移,向量刺激具有600000 索引。向量如下。

In [168]:stim

Out[168]:
array([-111.94824219,  -81.80664062,   10.21972656, ...,    9.78515625,
     24.11132812,   50.25390625])

现在我想选择这个向量的一小部分,比如从 stim[60]stim[50] 然后创建一个新向量并将向量stim 的这个小切片部分分配给一个新向量,例如stim_sliced

我将不胜感激。我正在使用 python 3。

【问题讨论】:

  • stim_sliced = stim[50:60] 有什么问题?这是标准的 Python 切片。

标签: python arrays python-3.x sorting vector


【解决方案1】:

只是添加到 Paul Cornelius 的回答中:
Python3 slice 是要走的路,因为它的效率与 for x in rangegetitem 相同 - 它们都是 O(k),其中 k 是项目数,而 slice 更短。
长向量没有比这更好的了。

【讨论】: