Skip to content

Instantly share code, notes, and snippets.

@Tingting-Chang
Created February 21, 2017 01:37
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Tingting-Chang/0912cf9daa01e0fc2f93815daae7506c to your computer and use it in GitHub Desktop.
Save Tingting-Chang/0912cf9daa01e0fc2f93815daae7506c to your computer and use it in GitHub Desktop.
## Sentiment analysis for whole dataset; get sentiment mean score for every movie
from nltk.sentiment.vader import SentimentIntensityAnalyzer
import pandas as pd
import math
def get_sentiment_score():
sid = SentimentIntensityAnalyzer()
sentiment_review = []
sentiment_mean = []
for i in range(0, len(reviews)):
sentence = reviews[i]
ss = sid.polarity_scores(str(sentence))
# for k in sorted(ss):
# print '{0}: {1}, '.format(k, ss[k])
# sentiment_review.append(str(sentence))
ss['review_detail'] = sentence[0]
ss['movie_name'] = sentence[1]
sentiment_review.append(ss)
# print pd.DataFrame(sentiment_review)
sentiment_review = pd.DataFrame(sentiment_review)
sentiment_review.to_csv('sentiment_reviews.csv', index = False)
for i in list(set(list(sentiment_review['movie_name']))):
sentiment_mean.append([i, sentiment_review[\
sentiment_review['movie_name'] == i]['compound'].mean()])
sentiment_mean = pd.DataFrame(sentiment_mean)
sentiment_mean.columns = ['movie_name', 'sentiment_mean']
sentiment_review.to_csv('sentiment_mean.csv', index = False)
return sentiment_review, sentiment_mean
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment