This Python application is built with Streamlit for analyzing WhatsApp chat conversations. It provides insights into various aspects of the chat, including message statistics, timelines, activity maps, word clouds, and more.
-
Message Statistics:
- Total number of messages
- Total words exchanged
- Number of media messages shared
- Number of links shared
-
Monthly and Daily Timelines:
- Visualization of message activity over months and days respectively.
-
Activity Map:
- Visualization of the busiest days and months.
-
Most Active User:
- Identification of the most active user in the chat.
-
Word Cloud:
- Visualization of most frequently used words, excluding stop words.
-
Most Common Words:
- Tabular display of the most commonly used words.
-
Emoji Analysis:
- Visualization and analysis of the most commonly used emojis.
- Ensure you have Python installed.
- Install the required packages listed in
requirements.txt.
- Run
streamlit run app.pyin your terminal. - Upload your WhatsApp chat text file (without media) to the platform.
- Click on the "Analyse" button to generate insights.
uploaded_file: Uploaded WhatsApp chat file.bytes_data: File content in bytes.data: Decoded file content as UTF-8.df: Processed DataFrame containing chat data.user_list: List of unique users in the chat.selected_user: User selected for analysis.num_messages: Total number of messages.words: Total number of words exchanged.num_media_messages: Number of media messages shared.num_links: Number of links shared.timeline: Monthly timeline data.daily_timeline: Daily timeline data.busy_day: Busiest day data.busy_month: Busiest month data.x: Most busy user data.new_df: DataFrame for most busy user analysis.df_wc: WordCloud data.most_common_df: DataFrame for most common words analysis.emoji_df: DataFrame for emoji analysis.
This project is developed using Streamlit, matplotlib, dataPreprocessor, and utils. The codebase is available in the files:
This app is deployed using Streamlit Sharing. You can access the live version here.
For those interested in hosting or running the app locally, you can follow these steps:
- Clone the repository:
git clone https://github.com/JineshPrajapat/WhatsApp_Chat_Analysis.git cd Chatlytics - Install dependencies:
pip install -r requirements.txt
- Run the app:
streamlit run app.py
- Ensure that the WhatsApp chat text file is exported without media to ensure accurate analysis.
- The application provides both overall analysis and user-specific analysis for group chats.
- Some features such as word clouds may require additional stop word lists for different languages.
- Jinesh Prajapat
- This application utilizes Streamlit for the web interface and various Python libraries for data processing and visualization.
- Streamlit
- Matplotlib
For any questions or issues, please contact the developers:
- Jinesh Prajapat - [[email protected]]