У меня довольно простой набор данных, содержащий даты и цены на бензин.
Это выглядит так, как показано ниже в WPS Spreadsheet
Но один и тот же набор данных формируется в matplotlib python следующим образом
Информационный кадр, на котором я рисую,
date price 0 2018-05-12 75.09 1 2018-05-13 75.09 2 2018-05-14 75.28 3 2018-05-15 75.42 4 2018-05-16 75.57 5 2018-05-17 75.78 6 2018-05-18 76.06 7 2018-05-19 76.34 8 2018-05-20 76.66 9 2018-05-21 76.98 10 2018-05-22 77.27 11 2018-05-23 77.55 12 2018-05-24 77.84 13 2018-05-25 78.19 14 2018-05-26 78.32 15 2018-05-27 78.46 16 2018-05-28 78.61 17 2018-05-29 78.76 18 2018-05-30 78.19 19 2018-05-31 78.68 20 2018-06-01 78.60 21 2018-06-02 78.51 22 2018-06-03 78.43 23 2018-06-04 78.43 24 2018-06-05 78.16 25 2018-06-06 78.05 26 2018-06-07 77.97 27 2018-06-08 77.77 28 2018-06-09 77.38 29 2018-06-10 77.15 30 2018-06-11 76.96 31 2018-06-12 76.82 32 2018-06-13 76.82
Здесь мой код, который я использую, чтобы построить импорт matplotlib.pyplot как plt import Datasets как DS
df = DS.getDataSet_petrol("13-06-2018")
plt.plot(df['date'],df['price'])
plt.show()
Очевидно, что таблица электронных таблиц показывает нелинноновые тенденции, в то время как matplotlib показывает линейный тренд.
Это смущает меня о правильной модели регрессии для использования линейных или полиномиальных регрессий.
Поэтому мой главный вопрос: как я могу сделать сюжет python похожим на таблицу?
Кажется, проблема вызвана наличием строковых объектов в вашем df["price"]
.
Это можно решить, превратив его в float до его построения.
plt.plot(df['date'],df['price'].astype('float'))
Или даже перед тем, как делать что-либо с данными:
df['price'] = df['price'].astype('float')