To convert user interviews into sentiment graphs, you can follow this structured approach:
Step-by-Step Process to Convert User Interviews to Sentiment Graphs
1. Transcribe Interviews (if needed)
If your interviews are in audio or video form, use tools like:
-
Otter.ai
-
Rev
-
Whisper by OpenAI
Ensure each speaker is clearly labeled.
2. Break Down Transcripts
Split the transcript into:
-
Sentences or phrases
-
Speaker turns (e.g., User, Interviewer)
3. Perform Sentiment Analysis
Use any of the following NLP tools/libraries:
-
VADER (Valence Aware Dictionary for sEntiment Reasoning) – great for short text.
-
TextBlob
-
Hugging Face Transformers – for deep-learning-based sentiment models.
-
Google Cloud Natural Language API or IBM Watson NLU
Each sentence or turn can be tagged with:
-
Polarity/Score: e.g., from –1 (negative) to +1 (positive)
-
Sentiment label: e.g., Negative, Neutral, Positive
4. Aggregate Sentiment Over Time
Create data points for each timestamp or sequence:
You can average sentiment over every minute or paragraph, depending on granularity.
5. Visualize with Graphs
Use Python libraries like:
-
Matplotlib
-
Seaborn
-
Plotly (for interactive graphs)
-
D3.js (for web-based visualization)
Graph ideas:
-
Line graph: sentiment over time
-
Bar chart: sentiment by topic or question
-
Heatmap: user sentiment per section
Example in Python (using Matplotlib):
6. (Optional) Tag by Topic
Use keyword extraction or topic modeling (e.g., with spaCy, BERTopic, or LDA) to tag which part of the interview corresponds to which topic. You can then overlay sentiment by topic for deeper insights.
7. Export & Embed
Export graphs as PNG or embed interactive versions using Plotly or D3 in web dashboards or reports.
Let me know if you’d like a full working script or want to upload a transcript for processing.