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.6K Connect
- 1.2K Connectors
- 300 Workbench
- 6 Cloud Amplifier
- 9 Federated
- 2.9K Transform
- 102 SQL DataFlows
- 626 Datasets
- 2.2K Magic ETL
- 3.9K Visualize
- 2.5K Charting
- 754 Beast Mode
- 61 App Studio
- 41 Variables
- 693 Automate
- 178 Apps
- 456 APIs & Domo Developer
- 49 Workflows
- 10 DomoAI
- 38 Predict
- 16 Jupyter Workspaces
- 22 R & Python Tiles
- 398 Distribute
- 115 Domo Everywhere
- 276 Scheduled Reports
- 7 Software Integrations
- 130 Manage
- 127 Governance & Security
- 8 Domo Community Gallery
- 38 Product Releases
- 11 Domo University
- 5.4K Community Forums
- 40 Getting Started
- 30 Community Member Introductions
- 110 Community Announcements
- 4.8K Archive