Я пытаюсь провести анализ настроений из CSV-файла, где в каждой строке есть предложение.
Репрекс:
print(your_list)
[['Patience and Kindness and I know they truly love and care for animals, my dog also enjoys the events like seeing Santa and the Easter Bunny'], ['They are so sweet to my pets and try to fit them into the schedule when needed'], ['they call and check on our pet a day or 2 after visit make sure we fully understand treatment before we leave'], ['every member of the staff understands how our pets are our family; we never feel rushed and always have or questions answered, and are given reassurance if and when needed; they are compassionate and kind, respectful and very caring'], ['They made it a very peaceful experience when we had to put our pug to sleep '], ['They interact with my dogs and you can see the care they have for them.'], ['they make every effort to accomodate us']
from vaderSentiment.vaderSentiment import SentimentIntensityAnalyzer
import csv
with open('Before.csv', "r", errors='ignore') as f:
reader = csv.reader(f)
your_list = list(reader)
print(your_list)
analyser = SentimentIntensityAnalyzer()
def print_sentiment_scores(sentence):
snt = analyser.polarity_scores(sentence)
print("{:-<40} {}".format(sentence, str(snt)))
print_sentiment_scores(your_list)
Однако я получаю следующую ошибку:
analyser = SentimentIntensityAnalyzer()
def print_sentiment_scores(sentence):
snt = analyser.polarity_scores(sentence)
print("{:-<40} {}".format(sentence, str(snt)))
print_sentiment_scores(your_list)
Traceback (последний последний вызов):
File "<ipython-input-24-a7a32425d261>", line 8, in <module>
print_sentiment_scores(your_list)
File "<ipython-input-24-a7a32425d261>", line 4, in print_sentiment_scores
snt = analyser.polarity_scores(sentence)
File "C:\Users\abc\AppData\Local\Continuum\anaconda3\lib\site-packages\vaderSentiment\vaderSentiment.py", line 248, in polarity_scores
text_token_list = text.split()
AttributeError: 'list' object has no attribute 'split'
Функция .split(" ") в your_list не помогает
[print_sentiment_scores(line) for line in your_list]
, таким образом вы выполняете операцию со строкой, а не со списком - person Tobey   schedule 20.08.2019None
, который затем выбрасывается, потому что он ничему не был назначен. - person Gillespie   schedule 20.08.2019