Анализ тональности видео на Youtube (Часть 2)

Это часть 2 серии, посвященной внедрению анализа настроений. Если вы не читали Часть 1, я бы посоветовал вам прочитать «Анализ тональности видео на Youtube». В этой части мы будем очищать наши текстовые данные, чтобы получить ценную информацию.

КРАТКИЙ ОБЗОР

Мы выполняем анализ настроений в приведенном ниже видео на YouTube по частям. Мы берем видео на тему «Восстание фермеров в Индии: что стоит за протестами?», опубликованное Global News.

Это видео о «Фермеры в Индии уже несколько месяцев протестуют против трех сельскохозяйственных законов, принятых 20 сентября правительством премьер-министра Нарендры Моди. Правительство Индии утверждает, что эти изменения предоставят фермерам больше свободы, но фермеры обеспокоены тем, что новые законы снизят цены на их продукцию без каких-либо гарантий, защищающих их от корпоративных поглощений и эксплуатации. Но в кризисе сельскохозяйственного сектора Индии нет ничего нового, поскольку отрасль страдает уже несколько десятилетий».

ЧАСТЬ 2: ОЧИСТКА ДАННЫХ

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

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

Общие действия по очистке данных для всего текста:

  • Сделать текст строчными
  • Удалить знаки препинания
  • Удалить числовые значения
  • Удалить общий бессмысленный текст (/n)
  • Удалить смайлики

В предыдущей статье мы успешно удалили все комментарии к вышеупомянутому видео на YouTube через API Youtube. В этой части мы будем очищать наши данные, чтобы получить из них значимую информацию.

Шаг 1. Импортируйте данные из файла response.json.

Мы получили ответ в формате json. Я сохранил его в файле с именем "response.json".

Мы импортировали наши данные json в "response"variable. Этот шаг не является обязательным. Я сделал это, потому что я только что сохранил данные, чтобы я мог работать с теми же данными, которые я получил в своей предыдущей статье. Если бы я снова запустил API, он бы принес мне самые новые комментарии. Вы можете сразу перейти к шагу 3.

Шаг 2. Помещение данных ответа во фрейм данных

Помните: это тот же код, который мы использовали на шаге 3 API Google в части 1 статьи.

Мы получим наш фрейм данных «df», как показано ниже:

Шаг 3. Очистка — этап 1

В нашей колонке «Комментарии» у нас есть несколько смайликов, использованных автором комментария, которые необходимо удалить. В строке 3 мы удалили эти смайлики.

В комментариях также присутствовали некоторые цифры, которые не нужны. Поэтому мы удалили его в строке 4.

Необходимо было удалить некоторые специальные символы, такие как
: , @ , * , ) , период (.), $ , ! , ?, запятая(,) , %, “

Эти символы мы удалили в строке 5.

После выполнения всей очистки в раунде 1 мы увидели данные, в которых все еще были некоторые специальные символы. Итак, нам нужно выполнить второй раунд процесса очистки.

Этап 4. Очистка — этап 2

После первого раунда уборки все еще оставалось несколько смайликов. Это были 💁🌾 😎 ♥ 🤷‍♂. Поэтому мы удалили их в строке 2 в приведенном ниже коде.

Остались также некоторые специальные символы, которые нужно было удалить. Это было удалено в строке 3.

После выполнения раунда 2 мы обнаруживаем, что в комментариях присутствуют некоторые новые символы строки, а также некоторые оставшиеся специальные символы. Это мы удалили в раунде 3.

Шаг 5. Очистка — этап 3

Символы новой строки, присутствующие в некоторых комментариях, были удалены в строке 2.

‘ , 🇵🇰 , ; , ! специальные символы, оставшиеся в обоих раундах, были окончательно удалены в строке 3.

Мы получили наш кадр данных, показанный ниже.

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

Шаг 6. Очистка — этап 4

До сих пор мы очищали наши данные, удаляя ненужные комментарии, специальные символы, цифры и смайлики.

Осталось только сделать все комментарии строчными.

Бинго! Теперь у нас есть готовый фрейм данных для использования в следующей части.

Давайте соберем все коды из первой части статьи и этой статьи.

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

В следующей части мы увидим концепцию Субъективности, Полярности и то, как они используются. Мы также будем формировать облака слов, чтобы визуализировать часто используемые слова в комментариях разных пользователей.

Ждите следующую часть!!

Ссылки:

  1. https://medium.com/analytics-vidhya/sentiment-analysis-of-a-youtube-video-63ced6b7b1c4
  2. https://regex101.com/
  3. https://github.com/adashofdata/nlp-in-python-tutorial