Words minning

Hello there!

In one of my applications I am trying to do data mining by adding scores to certain words to obtain a measurement of the use of bad words in comments that are made in a long text column.
For that I have a list of words with their respective scores in a table and through an expression I can get the score for each word that has been used.
The problem I have is that I do not have an exact measurement since the expression takes the words according to their characters and if a word has a comma, period, semicolon before or after the word the expression does not recognize it as such.
It would be nice to have a functionality or expression where we can NOT ALLOW characters that are not letters before or after a letter.
Eg: DO NOT ALLOW “word.”, “.Word”, “, word”, “word,”, etc …

What you are trying to do falls under something called ‘Sentiment Analysis’. AppSheet currently does not support it but with their AI initiatives its likely been discussed :open_mouth:.

In the mean-time, you may consider leveraging some existing sentiment analysis services online, such as IBM
Tone Analyzer:


As of yet, I have not explored these options further than this, but I intend to for some future applications.

Hope they develop this in Appsheet.
It would be great so we can crate email alerts in such cases

I forgot to mention, have you tried using the CONTAINS() expression?

Also if you are having issues with punctuation marks or case-sensitivity, you could first try ‘cleaning’ your strings by converting the entire string to uppercase with UPPER(), and replacing punctuation marks with SUBSTITUTE().


With that said, in general my suggestion for any sort of sentiment analysis would be to leverage actual AI which specializes in that department. There is more to sentiment analysis than counting good or bad words, such as context or user-specific patterns.

You may also manually submit your dataset into some sentiment analysis service, to get an idea for the types of insights possible.

I will try that.
Yes sentiment analysis is much more deeper than this, but if I can start with this, its a good beginning-