Cómo crear un dataframe modificado basado en los valores de una lista?
Considere un dataframe df
con la siguiente estructura: –
Name Slide Height Weight Status General
A X 3 0.1 0.5 0.2
B Y 10 0.2 0.7 0.8
...
Me gustaría crear duplicados para cada fila en este dataframe (específicamente para Name
y Slide
) para las siguientes combinaciones de Height
y Weight
mostradas en esta lista: –
list_combinations = [[3,0.1],[10,0.2],[5,1.3]]
La salida deseada: –
Name Slide Height Weight Status General
A X 3 0.1 0.5 0.2 #original
A X 10 0.2 0.5 0.2 # duplicado modificado
A X 5 1.3 0.5 0.2 # duplicado modificado
B Y 10 0.2 0.7 0.8 #original
B Y 3 0.1 0.7 0.8 # duplicado modificado
B Y 5 1.3 0.7 0.8 # duplicado modificado
etc. ...
Cualquier sugerencia y ayuda sería muy apreciada.
davy.ai
Para lograr el resultado deseado, puedes usar la función
merge
de pandas en combinación con los métodosexplode
eisin
. Aquí está cómo puedes hacerlo:Esto debería producir el dataframe de salida deseado. El código funciona de la siguiente manera:
df
y la lista de combinacioneslist_combinations
.df_combinations
, que contiene las columnas de Name y Slide.df
.list_combinations
.df_original
y se concatenan los dos dataframes.