python - 从不同大小的数组中采样每个第 n 个值 Python
问题描述
在我的代码中,我正在尝试编写一种能够从不同大小的数组中采样每个第 n 个数字的方法。说我有:
x = np.linspace(0,1,41)
我想从数组中采样 6 个均匀分布的数字。我知道我可以这样写:
xa = x[0::8]
在整个数组中获取 6 个数字,但是如果数组的大小发生变化,但我仍然想要该数组中的 6 个均匀间隔的数字怎么办?就像 x 数组现在看起来像这样:
x = np.linspace(0,1,26)
我不确定如何编写代码以提取任何可能大小的数组的值。
解决方案
您可以将步长重新定义为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. ])
推荐阅读
- python - 将现有 Python SAV 文件导入环境
- node.js - 使用 `npm i` 时不会生成 package-lock.json (npm v6.3.0, node v8.9.2)
- php - Laravel 错误 SQLSTATE[42000]:语法错误或访问冲突:1055
- c++ - 在结构中嵌入函数汇编代码
- javascript - 在数组中搜索同样不同的数字
- xpath - 如何使用 Xpath 从具有特定标题的表中获取行
- pandas - 如何使不同的列在 holoviews / hvplot 中呈现为不同的颜色?
- c++ - 编译器对 sin() 使用哪种近似算法?
- python - 使用深度学习防止在多类分类中过度拟合特定类
- angular - 在 Angular 6 中部署后的字体