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! **1
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! **1 -
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.9K Product Ideas
- 1.9K Ideas Exchange
- 1.6K Connect
- 1.3K Connectors
- 306 Workbench
- 6 Cloud Amplifier
- 9 Federated
- 3K Transform
- 112 SQL DataFlows
- 649 Datasets
- 2.2K Magic ETL
- 4K Visualize
- 2.5K Charting
- 787 Beast Mode
- 78 App Studio
- 43 Variables
- 743 Automate
- 187 Apps
- 474 APIs & Domo Developer
- 67 Workflows
- 15 DomoAI
- 40 Predict
- 17 Jupyter Workspaces
- 23 R & Python Tiles
- 406 Distribute
- 117 Domo Everywhere
- 279 Scheduled Reports
- 10 Software Integrations
- 139 Manage
- 136 Governance & Security
- 8 Domo Community Gallery
- 44 Product Releases
- 12 Domo University
- 5.4K Community Forums
- 41 Getting Started
- 31 Community Member Introductions
- 113 Community Announcements
- 4.8K Archive