Necesito crear un diccionario donde cada elemento es una fila. La clave representa una columna específica y los valores serán una lista de las entradas restantes de la columna. Ejemplo simple a continuación:

Ejemplo df:

Col_A     Col_B    Col_C    Col_D
Roger      5        blue    house
Kim        2        green   car
Mike       10       red     bike

Diccionario deseado = {'Roger': ['5', 'Blue', 'House'], 'Kim': ['2': 'Green', 'Coche'], 'Mike': ['10', ' rojo ',' bicicleta ']}

Cualquier sugerencia es apreciada!

1
dmd7 8 jun. 2021 a las 21:20

2 respuestas

La mejor respuesta

Configure el índice a COl_A, luego transponga el cuadro y convierta el diccionario con la orientación establecida a list

df.set_index('Col_A').T.to_dict('list')

{'Roger': [5, 'blue', 'house'],
 'Kim': [2, 'green', 'car'],
 'Mike': [10, 'red', 'bike']}
3
Shubham Sharma 8 jun. 2021 a las 18:25

Tratar:

print(df.set_index("Col_A").apply(list, 1).to_dict())

Huellas:

{'Roger': [5, 'blue', 'house'], 'Kim': [2, 'green', 'car'], 'Mike': [10, 'red', 'bike']}
1
Andrej Kesely 8 jun. 2021 a las 18:22