子采样一个numpy数组?

Nat*_*mas 1 python arrays numpy h5py

我相对较新的numpy但已开始使用它来读取和写入h5文件.我有图像数据,我已经计算了一些区域统计数据,将给定区域中的每个像素值读取到h5文件中.但是,我有很多像素值(可能是数千万),并希望对这些数据进行二次采样,这样我就可以减少数据大小,但保持数据的一般分布.

我想知道是否有一种简单的方法可以对每个数组的第200个值进行采样?

我会提出我已经使用的代码但是我的代码只能读取我现有的数据 - 我完全不知道如何对它进行二次采样,所以到目前为止还没有任何显示.

谢谢

wim*_*wim 8

您可以使用数组切片:

>>> import numpy as np
>>> a = np.eye(1000)
>>> a[::200, ::200]

array([[ 1.,  0.,  0.,  0.,  0.],
       [ 0.,  1.,  0.,  0.,  0.],
       [ 0.,  0.,  1.,  0.,  0.],
       [ 0.,  0.,  0.,  1.,  0.],
       [ 0.,  0.,  0.,  0.,  1.]])
Run Code Online (Sandbox Code Playgroud)