Мне кажется, нужно to_dict
с l
для list
с:
df = df.set_index('dayname').T.to_dict('l')
print (d)
{'Friday': [136.0, 239.0, 0.0, 0.0, 283.0],
'Monday': [305.0, 431.0, 0.0, 0.0, 845.0],
'Saturday': [0.0, 3.0, 0.0, 0.0, 11.0]}
Если важен порядок, добавьте параметр into
для OrderedDict
:
from collections import OrderedDict
d = df.set_index('dayname').T.to_dict('l', into=OrderedDict)
print (d)
OrderedDict([('Friday', [136.0, 239.0, 0.0, 0.0, 283.0]),
('Monday', [305.0, 431.0, 0.0, 0.0, 845.0]),
('Saturday', [0.0, 3.0, 0.0, 0.0, 11.0])])