ONLY SIZE 1 ARRAYS CAN BE CONVERTED TO PYTHON SCALARS КАК ИСПРАВИТЬ

Ошибка "only size 1 arrays can be converted to Python scalars" возникает при попытке выполнить математические операции с массивами NumPy, которые имеют размерность больше 1. Данная ошибка может возникать при попытке использования функций, которые не могут обрабатывать массивы большой размерности.

Одним из способов исправления этой ошибки является использование метода numpy.squeeze(), который удаляет из массива все оси со скалярными значениями, и делает размерность массива равной 1. Пример:

import numpy as np
x = np.array([[1, 2, 3], [4, 5, 6]])
y = np.array([1, 2, 3])
x_sum = np.sum(x)
y_sum = np.sum(y)
x_squeeze_sum = np.sum(np.squeeze(x))
print("x_sum:", x_sum)
print("y_sum:", y_sum)
print("x_squeeze_sum:", x_squeeze_sum)

Результат:

x_sum: 21
y_sum: 6
x_squeeze_sum: 21

Как видно из примера, использование метода numpy.squeeze() позволяет избежать ошибки "only size 1 arrays can be converted to Python scalars".

Array : TypeError: only size-1 arrays can be converted to Python scalars

Can only convert an array of size 1 to a python scalar?

List vs Array : Python tutorial 90

PYTHON : TypeError: only length-1 arrays can be converted to Python scalars while trying to exponen

PYTHON : TypeError: only length-1 arrays can be converted to Python scalars while plot showing

PYTHON : TypeError: only length-1 arrays can be converted to Python scalars while plot showing

BLGPG-47276127BB48-24-11-24-00

Новые материалы: