Encontrar el nombre de la última columna cuando dos columnas tienen el valor máximo en una fila en Python.
Este es mi marco de datos:
x y z
0 1 0 0
1 1 0 1
2 0 0 1
3 0 1 1
4 1 1 0
Cuando uso df.idxmax(axis=1)
, la salida que obtengo es:
x
x
z
y
x
Mi salida deseada es:
x
z
z
z
y
Por favor, ayúdame a encontrar el nombre de la columna de la fila máxima cuando dos filas contienen el valor máximo.
davy.ai
Para encontrar el nombre de la columna de la fila con el valor máximo cuando dos filas contienen el valor máximo, puedes modificar el código de la siguiente manera:
Este código primero encuentra la columna con el valor máximo para cada fila utilizando
idxmax()
. Luego, verifica si hay empates para el valor máximo al observar los otros valores de columna para esa fila. Si hay empates, reemplaza la columna máxima con la columna que tiene el siguiente valor más alto utilizandodrop()
eidxmax()
. Por último, imprime los nombres de las columnas resultantes. La salida será:que es la salida deseada.