No-code Sentiment Analysis On User-generated Community Content
Are you running a community to collect feedback and reviews? Perhaps, you have created a specific group in your community to learn more about how users perceive your solution and get feedback. Wouldn’t it be amazing if you could export the content and perform analysis to track the sentiment expressed over time and extract key topics discussed in your community?
Well, NLP (Natural Language Processing) techniques would be the go-to approach when it comes to sentiment analysis. Especially considering that a community creates significantly high amounts of user-generated content (unstructured data), application on NLP becomes critical.
In short, NLP is used to enable computing systems to read, understand, and analyze naturally used human language. Specifically coming to sentiment analysis – it is used to interpret, analyze, and classify human emotions expressed in textual data. Sentiment analysis is predominantly applied to reviews (e.g., e-commerce product reviews, YouTube comments) and other types of user-generated content (UGC) associated with a brand (e.g., tweets with brand mentions).
As you can see this is a highly technical field and traditionally data analytics professionals can apply text mining and NLP techniques to extract insights. One of our previous posts covered how Python programming language can be be used to analyze text data generated in a community. I’d highly recommend going through this post to learn more.
While it still holds true that, professionals in the data science and data analytics field are required to uncover insights from UGC, with the advent of no-code tools and plug-and-play APIs, it is increasingly becoming easier and straight-forward to perform analytics. For instance, companies such as Google, Microsoft, IBM, Amazon, and many other companies are offering APIs for data analytics, NLP, and different AI-based techniques. We need to feed the data to the API and only consume the result of the analysis.
In this post, I’m going to showcase how a community manager can use no-code tools to extract content from the community and perform analysis. This specifically applies to communities powered by Tribe – a modern and fully customizable community platform inspired by social media best practices.
Since Tribe has a comprehensive API (which can be read by tools such as Parabola) as well as integration with Zapier, we’ll cover the following two different setups for sentiment analysis:
Let’s get started!
Setting up Parabola with Tribe for sentiment analysis
Step 1
Create an account on Parabola.
Step 2
Finalize the content that you’d like to analyze and check out the API documentation. In this case, I’m selecting the posts, so we’ll use the following API endpoint:
https://community.tribe.so/api/v1/posts?
Note that if you are running a private community, you’ll need authentication token. Our support team can generate one for you.
Step 3
Now let’s move back to Parabola and click on “New Flow”.
Step 4
Add the API importer just the way shown below:
Step 5
Click on the gear icon of the API importer to set the Request Type
as GET
and enter the API endpoint.
Note that you can use the authorization token by clicking on Authentication
and traverse through additional pages by increasing the page=
number.
Now click on Show Updated Results
to get data in tabular format:
Step 6
Now you can use a column filter to select the columns on which further analysis (sentiment analysis in this case) needs to be performed.
Step 7
Now you can add the Row filter
to further clean the data.
In this case, I removed the rows that didn’t have any data.
Step 8
Now you need to add Sentiment analysis
to the workflow.
Next, select the column that would be analyzed (powered by Google Machine Learning API).
As you can see, each row now has a ‘sentiment score’ and ‘sentiment confidence’. Based on Parabola documentation, here is how you can interpret the result:
“Sentiments can be positive (a positive number), negative (a negative number), or neutral (zero). The results range from -100 to +100. The confidence field shows how likely it is that the sentiment supplied is correct. This number ranges from 0 (no confidence) to infinity.”
Step 9
You can sort the column based on the confidence score or use filter to add conditions (e.g., select the result with more than 50 confidence score).
Step 10
Finally, you can export the result to Google Sheets or any other cloud storage to save the output.
That was easy right? Based on this result, you can go back to the posts based on the sentiment score to learn more about the context.
Now we’ll explore how Zapier and MonkeyLearn can be set up to perform sentiment analysis.
Setting a Zap for sentiment analysis
Tribe offers deep integration with Zapier, so we’ll leverage that to create a Zap and run sentiment analysis using MonkeyLearn. If you’d like to understand how Zapier works, check out the official content here.
Create a trigger for new content created in the community
Go ahead choose Tribe as the app when you create the Zap and select trigger event as New Content
.
Authenticate access to the Tribe community by adding an API key (open up Zapier app in your community to get the key).
Select the content type on which you would perform analysis. In this case, I’ve selected answers.
Here is how it should look:
Format the answers
Since the answers contain HTML tag, let’s remove those tags using Formatter
offered by Zapier.
Now select Remove HTML tags
and select content that needs to be formatted.
Classifying text with MonkeyLearn
Select the MonkeyLearn app in the next step.
Authenticate by adding the access key.
Select Sentiment Analysis
as the classifier and specify the formatted Text
.
Test this to continue to the next step.
Filtering based on the confidence score
Select the Filter
app offered by Zapier.
Now we need to add a filter to accept the sentiment analysis only if the confidence score is high. We have selected 0.8 in this case.
Export the result to Google Sheets
Now we need to push the output to Google Sheets to compile the result and perform further analysis. So, as the last step, set up Google Sheet to export the output by mapping the result to each column in the spreadsheet.
Takeaway
No-code solutions will increasingly become sophisticated and make it easier for non-programmers to automate tasks rapidly. In this post, we explored just that with two different approaches. Now it is time for you to analyze the user-generated content in your community.