Что такое анализ настроений?

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

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

Зачем использовать Twitter для получения данных?

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

Начиная

Во-первых, вам, очевидно, понадобится компьютер с установленным Python (универсальным языком программирования высокого уровня). Вам обязательно понадобится установленный на вашем компьютере текстовый редактор.

Зарегистрируйтесь в Twitter API

С другой стороны, чтобы получать твиты от людей, нам нужен доступ к Twitter API. Затем нам будут предоставлены ключи API (потребитель и доступ). Зарегистрироваться

Https://developer.twitter.com/en/apply/user

Примечание. Если вы впервые подаете заявку на Twitter API, на рассмотрение может потребоваться несколько дней.

Если у вас уже есть к нему доступ, вам нужно создать приложение в Twitter через

Https://apps.twitter.com/app/new

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

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

Получение ключей доступа

Прежде чем мы сможем получать твиты, мы должны использовать наши ключи доступа. Чтобы получить доступ к этим ключам, перейдите на https://apps.twitter.com, найдите приложение, созданное ранее, и нажмите Подробнее.

Перейдите на вкладку Ключи и токены.

Если вы впервые используете этот проект, в разделе «Токен доступа» выберите сгенерировать ключи API.

Установка наших библиотек

Мы будем использовать всего две библиотеки; которые являются тонкими и текстовыми блоками.

Tweepy - это простая в использовании библиотека Python для доступа к Twitter API, а Textblob - это библиотека для обработки текстовых данных, и мы будем использовать ее для измерения настроения наших твитов. Процесс установки довольно прост - используйте pip

Кодирование

Сначала мы импортируем наши библиотеки

Затем нам нужно аутентифицировать нашу программу с помощью Twitter API. Если вы вернетесь в свое приложение Twitter и перейдете на вкладку «Ключи и токены доступа», вы увидите эти четыре объекта (которые я отсеял), которые вам нужно будет импортировать в свой сценарий для создания канала аутентификации.

Мы создали четыре переменные и присвоили им свои токены и ключи.

Нам нужно передать наш ключ потребителя и секрет потребителя в метод библиотеки tweepy под названием OAuthHandler.

Затем мы воспользуемся методом OAuthHandler, написанным внутри библиотеки tweepy, и передадим наш ключ потребителя и секрет потребителя в качестве параметров. Для нашего проекта нам не нужно знать подробности этого метода. Скажем так, tweepy использует этот метод для выполнения своих внутренних вычислений. Затем мы вызываем метод set_access_token переменной auth и передаем наш токен доступа и секрет токена доступа в качестве аргументов.

После этого мы создаем волшебную переменную, которая даст нам доступ ко всем сервисам API, которые нам понадобятся для проекта. Мы назовем его API и назначим API-метод tweepy, который принимает только один аргумент - auth.

Теперь, когда мы установили доступ к Twitter API, мы можем начать делать кучу вещей. Поищем твиты.

Итак, давайте поищем твит о президенте Нигерии Мухаммаду Бухари. Его псевдоним в Твиттере - Мбухари.

Таким образом, нам в основном нужно будет создать запрос и назначить его Mbuhari, чтобы наша программа находила все твиты, говорящие о Mbuhari, и извлекала их для нас. Мы также можем назначить верхний предел максимального количества твитов, на котором мы хотим, чтобы наша программа останавливалась, как насчет того, чтобы сделать сотню!

Tweepy имеет встроенный объект под названием Курсор, который выполняет итерацию по временной шкале, спискам пользователей, прямым сообщениям и т. Д., Что упрощает процесс перехода по страницам. Через Cursor нашего tweepy мы передадим метод поиска нашего API и запрос, чтобы в основном сказать ему, что искать, и, кроме того, сообщить нашей программе, сколько элементов (твитов) нужно найти. Мы присвоим все это нашей переменной

public_tweets и создайте пустой список (tweet_sentiment), который будет содержать тональность нашего твита.

Мы почти закончили. Чтобы распечатать все твиты, нам нужно написать простой цикл for. Я реализовал два дополнительных фильтра в цикле for, чтобы получать только твиты на английском языке и исключать все ретвиты.

Чтобы вычислить тональность каждого твита при их получении, мы будем использовать TextBlob. TextBlob имеет метод под названием тональность, который анализирует текст, который проходит через него, и вычисляет его классификацию. Мы создадим анализ переменных и назначим ему твиты, прошедшие через TextBlob. Затем мы можем вызвать метод тональности и распечатать их вместе с нашими твитами. Затем мы добавляем каждое мнение в наш список tweet_sentiment.

У вас должно получиться что-то вроде этого. Вы увидите, что каждый твит был классифицирован как положительный или отрицательный.

Затем мы создаем словарь data, затем передаем в него список tweet_sentiment в качестве значения и Tweet в качестве ключа.

Затем мы преобразуем словарь в фрейм данных с помощью метода pandas DataFrame, а затем назначаем его данным.

Чтобы визуализировать возникшие настроения, мы будем использовать импортированные выше морские волны. Мы будем создавать гистограмму настроений с помощью Seaborn.

У Seaborn есть функция set_style, которая используется для стилизации вашей диаграммы, я использую darkgrid в качестве своего стиля (вы можете узнать больше о seaborn позже). Теперь, когда у нас есть фрейм данных, данные, в котором есть столбец Tweet, мы построим нашу гистограмму на основе этого.

Если вы правильно выполнили процедуры, у вас должно получиться что-то вроде этого. Из приведенного ниже графика видно, что у нас процент положительных и отрицательных твитов выше.

заявка