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.
следующий код был бы должен помогать тебе
#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