Я пытаюсь выполнить поэлементное умножение многочисленных массивов numpy.
Реализация: -
Код: Выделить всё
mult = np.ones(len(single_arrays[0]))
for i in range(len(single_arrays)):
mult *= single_arrays[i]
Большинство значений в каждом из отдельных массивов находится в диапазоне от 0 до 1 (некоторые значения превышают 1), а двумерный "single_arrays" содержит около 700 отдельных массивов.Результирующий массив "mult" содержит множество значений "inf" и одно значение "nan", хотя ни один массив в "single_arrays" не имеет значений "inf" или "nan", все значения действительны с плавающей запятой.
Почему эта проблема возникает в mult ? Некоторые значения в массиве очень малы и достигают десятков и тысячных знаков после запятой. Может ли здесь возникнуть проблема с переполнением или недостатком?
Подробнее здесь:
https://stackoverflow.com/questions/761 ... the-origin