Comprensión del error: "ValueError: no se puede reindexar desde un eje duplicado"
En pandas, "ValueError: no se puede reindexar desde un duplicado "eje" se encuentra al intentar reindexar o asignar datos a lo largo de un eje que contiene valores duplicados. Este problema surge al unir o asignar datos a una columna/fila que tiene valores de índice duplicados.
Aplicar el concepto al ejemplo
En el ejemplo proporcionado, el usuario está intentando establecer el valor del índice 'sumas' en la suma de todas las columnas en affinity_matrix DataFrame. Sin embargo, el error se produce porque hay un valor duplicado en affinity_matrix.columns, que no se muestra en el fragmento de código proporcionado.
Este valor duplicado crea un conflicto al intentar reindexar o asignar datos a lo largo de las columnas eje. Para resolver este problema, es necesario asegurarse de que los valores de índice en el DataFrame sean únicos antes de realizar dichas operaciones.
Prueba con un ejemplo simplificado
Usemos un ejemplo simplificado ejemplo para ilustrar mejor el error:
import pandas as pd
import numpy as np
a = np.arange(35).reshape(5, 7)
df = pd.DataFrame(a, ['x', 'y', 'u', 'z', 'w'], range(10, 17))
df.loc['sums'] = df.sum(axis=0) # Assume that 'sums' is already an index value
# This would result in the ValueError, as 'sums' is a duplicate index value
El error ocurre porque el DataFrame 'df' ya tiene un valor de índice 'sumas' en las filas e intenta crear un nuevo El valor de índice con el mismo nombre da como resultado un eje duplicado.
Conclusión
El error "ValueError: no se puede volver a indexar desde un eje duplicado" sirve como recordatorio para garantizar la unicidad de valores de índice en un DataFrame. No hacerlo puede generar problemas al realizar operaciones en ejes específicos, como reindexar o asignar datos.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3