Как визуализировать совокупные значения оценки настроений VADER с течением времени в Python? - PullRequest
0 голосов
/ 26 мая 2020

У меня есть Pandas фрейм данных, содержащий твиты за период с 24 июля 2019 года по 19 октября 2019 года. Я применил метод анализа настроений VADER к каждому твиту и добавил оценки настроений в новые столбцы.

Теперь я надеялся визуализировать это на каком-то линейном графике, чтобы проанализировать, как менялись усредненные суточные оценки настроений за этот трехмесячный период. Поэтому мне нужно, чтобы даты были на оси x, а усредненные отрицательные, положительные и сложные оценки (три разные линии) на оси y.

У меня есть идея, что мне нужно как-то сгруппировать или пересчитать данные, чтобы показать агрегированное значение настроения за день, но, поскольку мои Python навыки все еще ограничены, мне не удалось найти решение это еще работает.

Если у кого-нибудь есть идея, как я могу продолжить, я был бы очень признателен! Я прикрепил изображение своего фрейма даты, а также пример типа сюжета, который я имел в виду :)

Ура, Николай

enter image description here

enter image description here

1 Ответ

0 голосов
/ 26 мая 2020

Вам следует взглянуть на метод groupby (): https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.groupby.html

Просто создайте столбец дня, который содержит отметку времени / datetime_object / dict / tuple / str ... который представляет день твита, а не точное время . Затем используйте метод groupby () для этого столбца. Если вы не знаете, как создать этот столбец, простой способ сделать это - использовать https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.apply.html

Имейте в виду, что метод groupby не возвращает DataFrame, а groupby_generi c .DataFrameGroupBy , поэтому вам нужно будет выбрать способ агрегации данных в ваших группах (вам, вероятно, следует использовать groupby (). Mean () в вашем случае, см. Документацию по методу grouby для получения дополнительной информации )

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...