Skip to main content
 首页 » 编程设计

python之对 numpy 数组进行子采样

2025年05月04日12jirigala

我对 numpy 比较陌生,但已经开始使用它来读写 h5 文件。我有图像数据,我计算了一些区域统计数据,将给定区域中的每个像素值读入 h5 文件。但是,我有很多像素值(可能是数千万)并且想要对这些数据进行子采样,以便我能够减少数据大小但保持数据的一般分布。

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

我会提供我已经拥有的代码,但我的代码只能读取我现有的数据 - 我完全不知道如何对它进行子采样,所以到目前为止没有任何东西可以展示。

谢谢

请您参考如下方法:

您可以使用数组切片:

>>> 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.]])