At its core, Python-based sentiment analysis is the use of algorithms to predict and classify text, and then predict whether the text is positive, negative, or neutral using natural language processing techniques.
Sentiment analysis is not 100% accurate and is therefore meant to be used in confluence with other forms of analysis.
For more about sentiment analysis and its power and pitfalls, check out this basic introduction from MonkeyLearn.
For more about Latent Dirichlet association (LDA) and Non-negative matrix factorization (NMF), check out this Medium post. We use LDA and NMF for discovering topic clusters.
For more about interpreting sentiment scores, check this post from freeCodeCamp.org.
Our analysis makes use of the popular libaries TextBlob and the Natural Language Toolkit (NLTK)