Я искал TextBlob для вычисления оценок настроения (полярность, субъективность) для списка статей на листе Excel, который я скомпилировал.
Ниже приведен пример листа:
11/03/2004 04:03 По меньшей мере 60 человек погибли в результате трех взрывов бомб на переполненных мадридских поездах во время самого ужасного террористического акта в Испании, сообщают Efe Newswire и другие СМИ.Красный Крест заявил, что по меньшей мере 200 человек получили ранения.«Это бойня», - заявил лидер Социалистической партии Хосе Луис Родригес Сапатеро, который обвинил баскскую террористическую группу ETA.
07/07/2005 04:41 Лондон закрыл свою систему метро и эвакуировал все станции после чрезвычайной ситуациислужбы были призваны к взрывам в финансовом районе и вокруг него.
01.12.2009 04:00 American International Group, Inc. (AIG) сегодня объявила о закрытии двух ранее объявленных сделок с Федеральным резервным банком.Нью-Йорк (FRBNY), который сократил долг AIG задолжала FRBNY на 25 миллиардов долларов в обмен на приобретение FRBNY привилегированных долей участия в некоторых вновь образованных дочерних компаниях.
22/08/2013 11:38 Закрытие NASDAQв течение 3 часов из-за проблем с компьютером
Я смог использовать textblob самым простым способом, выполнив каждую строку отдельно, так:
analysis = TextBlob("NASDAQ shuts down for 3 hours due to a computer problem")
print(analysis.sentiment)
What I 'Я хотел бы импортировать мой файл Excel, содержащий дату и время, а также статьи в двух столбцах и перейти к циклу по каждой строке, чтобырассчитайте полярность и субъективность и сохраните их в файле.
Я попытался изменить код в Thomson Reuters News Analytics следующим образом:
import pandas as pd
import numpy as np
from textblob import TextBlob
path_to_file = "C:/Users/Parvesh/Desktop/New Project/Sentiment Analysis/events.csv"
df = pd.read_csv(path_to_file, encoding='latin-1')
df.head()
df['Polarity'] = np.nan
df['Subjectivity'] = np.nan
pd.options.mode.chained_assignment = None
for idx, articles in enumerate(df['articles'].values): # for each row in our df dataframe
sentA = TextBlob("articles") # pass the text only article to TextBlob to analyze
df['Polarity'].iloc[idx] = sentA.sentiment.polarity # write sentiment polarity back to df
df['Subjectivity'].iloc[idx] = sentA.sentiment.subjectivity # write sentiment subjectivity score back to df
df.head()
df.to_csv("out.csv", index=False)
Код не работает, хотя ..Я не получаю никаких баллов.
Любой совет, как я могу это сделать?
Я полный новичок в Python (я использую Pycharm).Я пишу в основном на Stata и Matlab.
Пожалуйста, помогите!