pythonnumba:如何从numpy数组中分割列?

pythonnumba:如何从numpy数组中分割列?,python,numpy,numba,Python,Numpy,Numba,我知道numba在nopython模式下支持许多numpy函数: 但是,有没有一种方法可以在nopython模式下从numpy数组中切片列或行 差不多 x= y[:,mycol] x=y[myrow,:] 在nopython模式下不工作。我发现的唯一解决方法是在numba外部切片数组,并将“切片”传递给我的numba函数,但这并不总是可行或简单的 谢谢 您使用的是什么版本的Numba?在0.26.0中,以下工作: import numpy as np import numba as nb @

我知道numba在nopython模式下支持许多numpy函数:

但是,有没有一种方法可以在nopython模式下从numpy数组中切片列或行

差不多

x= y[:,mycol]
x=y[myrow,:]
在nopython模式下不工作。我发现的唯一解决方法是在numba外部切片数组,并将“切片”传递给我的numba函数,但这并不总是可行或简单的


谢谢

您使用的是什么版本的Numba?在0.26.0中,以下工作:

import numpy as np
import numba as nb

@nb.jit(nopython=True)
def func(x, mycol):
    y = x[:,mycol]

    return y

x = np.arange(100).reshape((10,10))
mycol = 2
y = func(x, mycol)

print np.allclose(x[:,mycol], y)  # True

我用的是0.20.0。我现在不想升级,因为我不能像过去那样冒发现与以前版本不兼容的风险。我一有时间就升级。谢谢PS我想你不知道用0.20版做这件事的方法,对吗?我刚刚用0.20测试了相同的代码,它在我的机器上运行