Cómo corregir: ValueError: establecer un elemento de array con una secuencia

En este artículo, discutiremos cómo corregir ValueError: establecer un elemento de array con una secuencia usando Python.

El error que básicamente encontramos cuando usamos la biblioteca Numpy es ValueError: configuración del elemento de array con una secuencia. Enfrentamos este error básicamente cuando creamos una array o tratamos con numpy.array. 

Este error ocurrió debido a que numpy.array creó una array con un valor dado, pero el tipo de datos del valor no es el mismo que el tipo de datos proporcionado a numpy. 

Pasos necesarios para evitar este error:

  • La forma más fácil de solucionar este problema es utilizar el tipo de datos que admita todo tipo de tipos de datos.
  • La segunda forma de solucionar este problema es hacer coincidir el tipo de datos predeterminado de la array y asignar el valor.

Método 1: usar un tipo de datos común

Ejemplo: programa para mostrar el código de error:

Python

# In this program we are demonstrating how different
# Data-type can cause value error
 
import numpy
 
# Creating multi-dimension array
array1 = [1, 2, 4, [5, [6, 7]]]
 
# Data type of array element
Data_type = int
 
# This cause Value error
np_array = numpy.array(array1, dtype=Data_type)
 
print(np_array)

Producción:

 Archivo “C:\Users\computers\Downloads\he.py”, línea 13, en <módulo>

 np_array = numpy.array(array1,dtype=Data_type);

ValueError: establecer un elemento de array con una secuencia.

Podemos corregir este error si proporcionamos el tipo de datos que admite todos los tipos de datos para el elemento de la array:

Sintaxis: 

numpy.array( Array ,dtype = Common_DataType );

Ejemplo: código fijo

Python

# In this program we fix problem by different data-type
 
import numpy
 
# Creating multi-dimension array
array1 = [1, 2, 4, [5, [6, 7]]]
 
# Object Data type is accept all data-type
Data_type = object
 
# Now we fix the error
np_array = numpy.array(array1, dtype=Data_type)
 
print(np_array)

Producción:

[1 2 4 list([5, [6, 7]])]

Método 2: haciendo coincidir el tipo de datos predeterminado de value y Array

Ejemplo: Programa para mostrar error

Python

# In this program we are demonstrating how mismatch
# of data-type can cause value error
 
import numpy
 
# Creating array
array1 = ["Geeks", "For"]
 
# Default Data type of Array
Data_type = str
 
 
np_array = numpy.array(array1, dtype=Data_type)
# This cause error
np_array[1] = ["for", "Geeks"]
print(np_array)

Producción:

Archivo “C:\Users\computers\Downloads\he.py”, línea 15, en <módulo>

np_array[1] = [“para”,”Geeks”];

ValueError: establecer un elemento de array con una secuencia

Aquí hemos visto que este error se debe a que estamos asignando una array como elemento a una array que acepta el tipo de datos de string. podemos corregir este error haciendo coincidir el tipo de datos de valor y array y luego asignarlo como elemento de array.

Sintaxis: 

if np_array.dtype == type( Variable ):
      expression;

Ejemplo: código fijo

Python

# In this program we fix error by mismatch
# of data-type
 
import numpy
 
# Creating array
array1 = ["Geeks", "For"]
 
# Default Data type of Array
Data_type = str
 
 
np_array = numpy.array(array1, dtype=Data_type)
 
Variable = ["for", "Geeks"]
 
# First we match the data-type
if np_array.dtype == type(Variable):
    np_array[1] = Variable
else:
    print("Variable value is not the type of numpy array")
print(np_array)

Producción:

Variable value is not the type of numpy array
['Geeks' 'For']

Publicación traducida automáticamente

Artículo escrito por satyam00so y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *