Как мне повернуть следующий фрейм данных, чтобы иметь один столбец в день недели?
import numpy as np
import pandas as pd
idx = pd.date_range('2018-01', '2018-12', name='date')
df = pd.DataFrame(np.random.random(len(idx)), index=idx, columns=['value'])
df['weekday'] = idx.weekday
Я пробовал следующее, и хотя в день недели есть один столбец, их многоNaN
значений.Это связано с тем, что индекс фрейма данных используется поворотным фреймом данных.
pivoted = df.pivot(columns='weekday', values='value')
pivoted.head()
# weekday 0 1 2 3 4 5 6
# date
# 2018-01-01 0.638018 NaN NaN NaN NaN NaN NaN
# 2018-01-02 NaN 0.179721 NaN NaN NaN NaN NaN
# 2018-01-03 NaN NaN 0.713559 NaN NaN NaN NaN
# 2018-01-04 NaN NaN NaN 0.2092 NaN NaN NaN
# 2018-01-05 NaN NaN NaN NaN 0.679759 NaN NaN
В конечном счете, я бы хотел получить коробочные графики значений за день недели.Следующее работает, потому что значения NaN
игнорируются.
pivoted.plot.box()
Конечно, есть способ, который не включает много значений NaN
?