es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo agregar un valor bajo un encabezado específico en un dataframe como parte de un bucle “for”?

Digamos que he creado un dataframe de la siguiente manera:

headings = {'A': [], 'B': []}
data = pd.DataFrame(headings)

Luego, como parte de un bucle for, la salida de una función agrega valores al data frame, pero solo bajo ‘B’:

order = [1, 2, 3, 4]

for x in order:
    output = function(x)
    data = data.append(output)

Esto produce lo siguiente:

    A    B
0  Nan  23
1  Nan  24
2  Nan  26
3  Nan  27

Quiero agregar el valor de x mismo bajo ‘A’ como parte del bucle for, para que la salida se vea así:

   A   B
0  1  23
1  2  24
2  3  26
3  4  27

No puedo revelar la función/datos reales debido a su sensibilidad, pero avísame si necesitas más información.

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Para agregar valores a la columna ‘A’ del marco de datos como parte del bucle for, puedes modificar la variable ‘output’ para incluir el valor de ‘x’ creando un diccionario con claves ‘A’ y ‘B’ y luego agregándolo al marco de datos. Así es como se vería el bucle for:

    order = [1,2,3,4]
    
    for x in order:
        output = {'A': x, 'B': function(x)}
        data = data.append(output, ignore_index=True)
    

    El parámetro ‘ignore_index=True’ se utiliza para restablecer el índice del marco de datos después de agregar nuevas filas. Esto debería producir el resultado deseado:

         A   B
    0    1   23
    1    2   24
    2    3   26
    3    4   27
    

Comments are closed.