python - 如何在 python 中快速细化网格

标签 python numpy

我有一个 numpy array([1.0, 2.0, 3.0]) ,在我的问题中,这实际上是一维网格。我想要做的是细化网格以获得此:array([0.8, 0.9, 1, 1.1, 1.2, 1.8, 1.9, 2, 2.1, 2.2, 2.8, 2.9, 3, 3.1, 3.2,]) .

实际的数组很大,这个过程耗费了很多时间。如何在 python 中快速执行此操作(也许是矢量化)?

最佳答案

这是一个矢量化的方法-

(a[:,None] + np.arange(-0.2,0.3,0.1)).ravel() # a is input array

sample 运行-

In [15]: a = np.array([1.0, 2.0, 3.0])  # Input array

In [16]: (a[:,None] + np.arange(-0.2,0.3,0.1)).ravel()
Out[16]: 
array([ 0.8,  0.9,  1. ,  1.1,  1.2,  1.8,  1.9,  2. ,  2.1,  2.2,  2.8,
        2.9,  3. ,  3.1,  3.2])

关于python - 如何在 python 中快速细化网格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42328934/

相关文章:

python - 使用 Python 对 MySql 数据库中的数字范围进行分类

python - 标记化 python 源代码示例(在 Python 中)

python - 循环变量感知 numpy 的切片和向量化计算

python - Cython 是否提供任何合理简单有效的方法来迭代 Numpy 数组,就好像它们是扁平的一样?

numpy - 确定哪个编译器构建了我的 LAPACK

Python(pandas)-用计数重置索引

python - 使用 opencv python 根据图像大小对图像进行网格化

c++ - OpenCV/C++ 程序比它的 numpy 对应程序慢,我该怎么办?

python - 替代 python 文档

python - numpy 数组的平均像素减法