Насколько я знаю, принудительное использование одного типа для элементов в numpy.ndarray должно выполняться вручную (если только массив не содержит сканировщики Numpy): нет встроенного механизма проверки (ваш массив имеет dtype = object) , Если вы действительно хотите применить один тип, вы должны подклассифицировать ndarray и реализовать проверки в соответствующих методах (__setitem__
и т. Д.).
Если вы хотите реализовать операции над набором функций (Объекты ядра), вы могли бы это сделать, указав правильные операции непосредственно в своем классе Kernel. Это то, что я сделал для моего модуля analytties.py , который обрабатывает numpy.ndarrays чисел с неопределенностями.