Сиборн не любит даты: вместо них используются ординалы дат

RedDeveloper
02.03.2023 14:44
Сиборн не любит даты: вместо них используются ординалы дат

Проблема

Я столкнулся с этой ошибкой при попытке построить график линейной регрессии в Seaborn с использованием дат:

После некоторых исследований я обнаружил, что проблема была не в моем коде как таковом: похоже, что Seaborn не может создавать оси графиков из объектов datetime.date.

Я пересмотрел свой код:

шкале мы можем использовать ординалы дат вместо дат. Порядковые числа представляют позицию в серии как целое число. Это действительно было моей проблемой. Я вызвал seaborn.lmplot(), но использовал объект даты, созданный из данных временных меток, для оси x. Вместо этого Seaborn хочет использовать для оси float или int.

Ближайшее решение

Чтобы сделать непрерывный

Mp столбец, из которого я создал поле даты:

Первоначально мои данные выглядели примерно так:

Вы можете видеть здесь временную дату

На оси x с датами и расположите их под углом 45 градусов.Следующий шаг: создайте порядковое значение даты из даты с помощью лямбда-функции для каждой строки:

Теперь мы можем построить график, используя date_ordinal. Вот код для seaborn.lmplot():

Обратите внимание на дополнительный код, используемый для установки осей соответствующим образом, замените порядковое число

Вот как это выглядит:

Не очень полезно для данных, которые я создал для этого примера, поэтому давайте вернемся к моему исходному набору данных.

Но как насчет pandas.groupby()?

На самом деле, мой исходный набор данных содержал еще одну проблему, потому что я пытался построить график данных, которые были сгруппированы с помощью pandas.groupby().

В виде колонки

Теперь я могу построить график и линейную регрессию. Вот код:

Теперь я могу построить график и линейную регрессию Вот код Здесь я уже создал колонку date_ordinal, но когда я делаю groupby('date_ordinal'), обратите внимание, что происходит:

Здесь я уже создал колонку date_ordinal но когда я делаю groupby('date_ordinal')

Rn!Линия регрессии, похоже, имеет положительный градиент - но только лишь. Следующий шаг - вычислить градиент с помощью scikit-lea

Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?

20.08.2023 18:21

Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в 2023-2024 годах? Или это полная лажа?".

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией

20.08.2023 17:46

В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.

Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox

19.08.2023 18:39

Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в частности, магию поплавков и гибкость flexbox.

Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest

19.08.2023 17:22

В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для чтения благодаря своей простоте. Кроме того, мы всегда хотим проверить самые последние возможности в наших проектах!

Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️

18.08.2023 20:33

Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий их языку и культуре.

Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL

14.08.2023 14:49

Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип предназначен для представления неделимого значения.