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!
Create an account on Parabola.
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:
Note that if you are running a private community, you’ll need authentication token. Our support team can generate one for you.
Now let’s move back to Parabola and click on “New Flow”.
Add the API importer just the way shown below:
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
Now click on
Show Updated Results to get data in tabular format:
Now you can use a column filter to select the columns on which further analysis (sentiment analysis in this case) needs to be performed.
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.
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.”
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).
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.
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
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.
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.
Sentiment Analysis as the classifier and specify the formatted
Test this to continue to the next step.
Filtering based on the confidence score
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.
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.