У меня есть следующий массив:
import numpy as np
from numba import njit
test_array = np.random.rand(4, 10)
Я создаю «объединенную» функцию, которая разрезает массив и выполняет некоторые операции после этого:
@njit(fastmath = True)
def test_function(array):
test_array_sliced = test_array[[0,1,3]]
return test_array_sliced
Однако Numba выдает следующееошибка:
In definition 11:
TypeError: unsupported array index type list(int64) in [list(int64)]
raised from /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/numba/typing/arraydecl.py:71
This error is usually caused by passing an argument of a type that is unsupported by the named function.
Обходной путь
Я попытался удалить ненужные мне строки с помощью np.delete
, но, поскольку мне нужно указать axis
, Numba выдает следующую ошибку:
@njit(fastmath = True)
def test_function(array):
test_array_sliced = np.delete(test_array, obj = 2, axis = 0)
return test_array_sliced
In definition 1:
TypeError: np_delete() got an unexpected keyword argument 'axis'
raised from /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/numba/typing/templates.py:475
This error is usually caused by passing an argument of a type that is unsupported by the named function.
Есть идеи, как извлечь определенные строки в Numba?