从不同大小的数组中采样第n个值

时间:2018-10-29 18:25:33

标签: python arrays slice

在我的代码中,我正在尝试编写一种方法,以便能够从不同大小的数组中采样第n个数字。说我有:

x = np.linspace(0,1,41)

,我想从数组中采样6个均匀间隔的数字。我知道我可以这样写:

xa = x[0::8]

在整个数组中获得6个数字,但是如果数组的大小发生变化怎么办,但是我仍然希望从该数组中获得6个均匀间隔的数字?如果x数组现在看起来像这样:

x = np.linspace(0,1,26)

我不确定如何编写代码以提取任何可能大小的数组的值。

1 个答案:

答案 0 :(得分:1)

您可以将步长重新定义为len(x)//some value

x=np.linspace(0,1,41)
xa=x[0::len(x)//5]

>>>xa
>>>array([0. , 0.2, 0.4, 0.6, 0.8, 1. ])