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.

Reorganización de datos en un archivo CSV

Estoy tratando de reorganizar un archivo csv. El archivo está configurado de la siguiente manera. Estoy usando Python 3 con las bibliotecas numpy y pandas.

Elemento Temperatura Fy
Elemento A 27 320
Elemento A 100 310
Elemento A 200 300
Elemento A 300 290
Elemento A 400 280
Elemento B 27 320
Elemento B 100 310
Elemento B 200 300
Elemento B 350 290
Elemento B 400 280

La primera columna tiene el nombre del elemento, la segunda columna tiene una temperatura y la tercera columna tiene una resistencia correspondiente. Es importante destacar que algunos elementos pueden contener diferentes valores de temperatura. Necesito reorganizar la columna para ejecutarla horizontalmente.

Elemento 27 100 200 300 350 400
Elemento A 320 310 300 290 0 280
Elemento B 320 310 300 0 290 280

Hasta el momento, el código que tengo es este:

df = pd.read_csv(‘MatNavi.csv’, header=0)
Elementos = df[‘Elemento’].unique() # Crea una matriz numpy de todos los elementos, sin duplicados, esto se convertirá en mi primera columna en el archivo csv final
X = df[‘Temperatura’].drop(Mn[Mn[‘Elemento’] != ‘Elemento A’].index) # crea una matriz numpy con los valores de temperatura y luego elimina todos los valores de temperatura que no sean para el Elemento A
Y = df[‘Fy’].drop(Mn[Mn[‘Elemento’] != ‘Elemento A’].index) # lo mismo, pero para Fy

Aquí es donde estoy atascado. Necesito crear una lista, matriz o dataframe que tenga los valores X (temperatura) como encabezados de columna y luego los valores Fy horizontalmente debajo de eso y que corresponda al encabezado de fila Elemento A. Supongo que el valor de temperatura debería ser el índice (no estoy seguro si este es el término correcto) que luego pandas o numpy puede usar para categorizar los valores Fy en orden. Simplemente no sé por dónde empezar.

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Puede utilizar la función pivot_table de la biblioteca pandas para reorganizar sus datos. Esta función toma tres argumentos: data, index y columns. data es el dataframe que desea reorganizar, index es la columna que desea utilizar como etiquetas de fila y columns es la columna que desea utilizar como etiquetas de columna. También puede especificar el argumento values para especificar qué columna desea utilizar como valores en la tabla.

    Por ejemplo, puede utilizar el siguiente código para reorganizar sus datos:

    python
    df.pivot_table(data=df, index='Element', columns='Temperature', values='Fy')

    Esto le dará el siguiente resultado:

    Elemento 27 100 200 300 350 400
    Elemento A 320 310 300 290 0 280
    Elemento B 320 310 300 0 290 280

Comments are closed.