¿Cómo puedo generar кадр данных ООН que я кадр данных ordene los datos de otro?

Tengo кадр данных ООН del siguiente estilo:

    |  X  |  Y  |
  0 | x_1 | y_1 | 
  1 | x_1 | y_2 |
  2 | x_1 | y_3 |
  3 | x_2 | y_1 |
  4 | x_2 | y_2 |
  5 | x_3 | y_2 |

Форма Y quiero ordenarlo de la siguiente

      | x_1 | x_2 | x_3 | 
  y_1 |  1  |  1  |  0  |
  y_2 |  1  |  1  |  0  |
  y_3 |  1  |  0  |  0  |

Форма ¿Existe alguna eficiente de hacerlo? Сын demasiadas файлы, uno por lo que recorrer los datos uno y generar ООН nuevo кадр данных demora mucho.

De antemano gracias!

Править: Восковины Lo que hice fue crear un dataframe DF2 de solo, en надели las columnas eran los X, las файлы Лос Y,

for indice_fila, fila in DF.iterrows():
    DF2[fila['trx']][fila['id']]=1

Esto tarda mucho, y mas adelante debo agregar mas файлы. Грех Estoy casi seguro que hay una función que lo hace recorrer.

4
задан 20.12.2019, 18:31
1 ответ

следующий код был бы должен помогать тебе

#Importamos pandas

import pandas as pd 

# Creamos el df original
data = {'X':['x_1','x_1','x_1','x_2','x_2','x_3'], 'Y':['y_1','y_2','y_3','y_1','y_2','y_2']}  
df = pd.DataFrame(data) 

#Agregamos una columna con 1 esto en todas las combinaciones de X Y
df['Value']=1
#Impimir el df 
df 

#Separamos en columnas los valores de X
df2 = df.pivot(index='Y',columns='X',values='Value')

#Llenamos los NaN "combinaciones faltantes" con 0
df2=df2.fillna(0)
df2
2
ответ дан 21.12.2019, 12:12