У меня есть следующий DataFrame (shorttend):
Date Price Sold
0 Nov 18 2019 01 4.304 2055
1 Nov 19 2019 01 1.473 263089
2 Mar 02 2020 09 0.973 1893
3 Mar 02 2020 10 0.962 1726
4 Mar 02 2020 11 0.967 1846
Таким образом, график распознает дату, которую я преобразовал, как DateTime-Object df['Date'] = pd.to_datetime(df['Date'])
. Price
- это int
, а Sold
- это String
.
Из этих данных я нанес на график две оси Y "Цена" и "Продано".
Проблема в том, что данные - это проданные единицы за целый день и один раз в час.
Я пытался сделать копию DataFrame до того, как DataTime-Object был создан. Затем я сократил Strings
из Date
до первых 6 символов с помощью df_copy['Date'] = [x[0:6] for x in df_copy['Date']]
, а затем (после того как я преобразовал строки Sold
в целые числа) суммировал их с df.groupby(['Date'])['count'].sum()
.
Проблема состояла в том, чтобы изменить сокращенную дату обратно на форму [Month Day Year 01]
(01
как указание общего часа).
Намерением было бы показать единицы, проданные за день, а не за час. Итак, подведем итог дням, которые в противном случае производят обманчивое впечатление на графике.
Имеет ли заговор, возможно, встроенную функцию для этого?