Sentiment Analysis on Facebook Comments
I'm curious if anyone has experience using the python tiles (or anything else) to do sentiment analysis. Specifically I would like to monitor comments on our social media platforms, and I'd love to do it in Domo if possible.
Best Answer
-
I don't see any reason why you couldn't. You could use the Python tiles to create a custom model or leverage built-in libraries. Use Domo's social media connectors to pull comments or posts to Domo or call with API. Or consider using Domo's Jupyter Notebooks (Python).
Something like thisfrom vaderSentiment.vaderSentiment import SentimentIntensityAnalyzer
import pandas as pd
# Load the dataset
df = pd.DataFrame(input_data)
# Initialize VADER
analyzer = SentimentIntensityAnalyzer()
# Analyze sentiment
def analyze_sentiment(comment):
scores = analyzer.polarity_scores(comment)
return scores['compound']
# Apply sentiment analysis to comments
df['sentiment_score'] = df['comment'].apply(analyze_sentiment)
# Label sentiment as Positive, Neutral, or Negative
def label_sentiment(score):
if score > 0.05:
return 'Positive'
elif score < -0.05:
return 'Negative'
else:
return 'Neutral'
df['sentiment_label'] = df['sentiment_score'].apply(label_sentiment)
output_data = df** Was this post helpful? Click Agree or Like below. **
** Did this solve your problem? Accept it as a solution! **0
Answers
-
I don't see any reason why you couldn't. You could use the Python tiles to create a custom model or leverage built-in libraries. Use Domo's social media connectors to pull comments or posts to Domo or call with API. Or consider using Domo's Jupyter Notebooks (Python).
Something like thisfrom vaderSentiment.vaderSentiment import SentimentIntensityAnalyzer
import pandas as pd
# Load the dataset
df = pd.DataFrame(input_data)
# Initialize VADER
analyzer = SentimentIntensityAnalyzer()
# Analyze sentiment
def analyze_sentiment(comment):
scores = analyzer.polarity_scores(comment)
return scores['compound']
# Apply sentiment analysis to comments
df['sentiment_score'] = df['comment'].apply(analyze_sentiment)
# Label sentiment as Positive, Neutral, or Negative
def label_sentiment(score):
if score > 0.05:
return 'Positive'
elif score < -0.05:
return 'Negative'
else:
return 'Neutral'
df['sentiment_label'] = df['sentiment_score'].apply(label_sentiment)
output_data = df** Was this post helpful? Click Agree or Like below. **
** Did this solve your problem? Accept it as a solution! **0 -
Thanks … that's very helpful. I have the comments pulled so I will play with this to see how it works. I may have a few follow-up questions (new to the Domo python tile), but I'll see where I get
0
Categories
- All Categories
- 1.8K Product Ideas
- 1.8K Ideas Exchange
- 1.5K Connect
- 1.2K Connectors
- 300 Workbench
- 6 Cloud Amplifier
- 9 Federated
- 2.9K Transform
- 100 SQL DataFlows
- 622 Datasets
- 2.2K Magic ETL
- 3.9K Visualize
- 2.5K Charting
- 744 Beast Mode
- 58 App Studio
- 41 Variables
- 686 Automate
- 176 Apps
- 453 APIs & Domo Developer
- 47 Workflows
- 10 DomoAI
- 36 Predict
- 15 Jupyter Workspaces
- 21 R & Python Tiles
- 395 Distribute
- 113 Domo Everywhere
- 276 Scheduled Reports
- 6 Software Integrations
- 125 Manage
- 122 Governance & Security
- 8 Domo Community Gallery
- 38 Product Releases
- 10 Domo University
- 5.4K Community Forums
- 40 Getting Started
- 30 Community Member Introductions
- 108 Community Announcements
- 4.8K Archive