Visualize a whatsapp group using Dash-Plotly.
- Clone the project to your local environment using the git command
git clone
-
Run the command
python app.py
-
For the lovers of Notebooks, you got all you need in the
.ipynb
file.
This will open a local host port where you can click it and all is good :).
In recent times, the textual data formats are exponentially increasing as a result calling for developers and analysts to come up with prototypes that can be able to handle such. Textual data is a home of other data such as age, prices, country of origin and so forth.It is mostly not feasible to examine text from whatsapp messenger due to a lot of underlying factors such as time and skills. But with the appropriate skill, unstructured data such as whatsapp can prove to be useful for sentiment analysis or visualization as depicted by this study.
A deep dive into Sentiment Analysis, it is first appropriate to define what the term means. Sentiment Analysis refers to the art of analytically discovering feelings, attitudes, emotions or evaluation of an opinion. Its representation basically looks at the sentiment intensity, sentiment orientation and the sentiment rating. Without considering knowledge discovery methodology, the CRISP-DM perspective of sentimental analysis may not capture much meaningful information. However, most of the prototypes and solutions proposed are now able to bring on board the core essentials of sentiment analysis as a very broad category. Social Media has proved to be the main source of data for sentiment analysis. This included sites such reddit, youtube, whatsapp, tumblr and twitter, just to mention a few. The focus of this paper is on whatsapp chats. This leads us to the next stage which entails the problem definition.
It sometimes may not be easy to qualify opinions and link them to the opinion holders in whatsapp groups. But with the rise of sentiment analysis, it could be easy to visualize and get to understand the patterns of underlying chats from a class group or even a chat with your friend. Sometimes, one may want to know which day a group was created after a long period of time, or sometimes, who are the most activepersons in a group. This is very difficult if you are to use manual methods. However, it would be easy if sentiment analysis and visualization are applied to whatsapp groups or chats. More specifically, a prototype for analyzing my first year whatsapp group was implemented to help depict how sentiment analysis can be of help.
Using Python and DashPlotly, it was possible to come up with a pipeline for analyzing whatsapp. The data was sourced from a first year whatsapp group, where it was exported in .txt format. A series of data preprocessing techniques were used to come up with an analysis and later a dash-plotly application for visualizing the group chats. Use of regular expressions to excavate data from the file and creating data tables to get to visualize the data was the key component of this task. This was followed by a plethora of visual plots as well as a wordcloud.
The data collected was and visualized using various charts such as bar graphs, time series charts and word clouds. A word cloud depicts the three words dahil, think and edilmedi were the most commonly used words. From the Time series chart, it is clear that the group was formed in September and most people were active at the start but the trend of charting decreased as time went by. Wednesdays and Fridays were the days that were mostly active whereas Teuesdays and Sartudays were the most dull days in the group. The analysis found out that Ruth Stam was the runners up when it came to sending messages in the group. Fatih was the 10th most active person. The Visualization is shown in the pictogram below.
Clearly, sentiment analysis can help us discover patterns which can then be visualized well in Dashboards. It was possible to discover this and indeed get to the bottom of the class whatsapp group. More can be done to this such as entity recognition and finding out if there are any positive and negative sentiments in the class group.