Sentiment Analysis for People About PlayStation's Disc Decision
The mood clearly leans negative, but exactly how negative, and how does it stack up against the positive and neutral voices? Let the data answer instead of the gut.
Introduction
On 1 July 2026, PlayStation announced that new games would stop shipping on physical discs from January 2028. The post spread fast and pulled in over a million views within days, so there was no shortage of reactions to measure. For a community that has bought boxed games for nearly thirty years, this was never going to be a quiet update, and within hours the replies, quotes and mentions were pouring in. I wanted to move past the anecdotes and measure the reaction properly: did the majority really react negatively, and by how much compared to the positive and neutral reactions?
Problem Statement
Public reaction to a moment like this is huge, messy and short lived. Instead of taking a quick glance and deciding the reaction is bad, let us run a sentiment analysis that tells us, using data and not gut feeling, how negative it really is and by exactly how much.
Solution
Data Collection
We collect the public reaction tweets from the first days of the announcement on X (Twitter), along with their details such as likes and retweets. Using TwitterAPI.io instead of the official API kept the cost low while still pulling direct replies, quote tweets and wider mentions of the post, which combined into a large sample of the conversation.
Data Cleaning
The raw pull is noisy, so we de-duplicate every reaction by its tweet id, drop deleted or empty bodies, and keep a single clean row per tweet carrying its text, language, timestamp and engagement. That left a tidy dataset of 56,677 unique reactions ready to score.
Sentiment Analysis
With the data clean, we score every reaction in Python by running a pre-trained NLP model. Because roughly a fifth of the reactions are not in English, the optimal choice here is a multilingual, tweet-tuned model: CardiffNLP's XLM-RoBERTa. It reads English, Spanish, Portuguese, French, Arabic and more on equal footing, and labels each reaction positive, neutral or negative with a confidence score.
Feature Engineering and Dashboard
From the model output we engineer the fields the report needs: a sentiment label, a signed sentiment score from minus one to plus one, per class probabilities, and helper columns for language and day. Those features feed a Power BI style dashboard that turns the numbers into something anyone can slice and explore, which you can try live below.
Tech Stack
- Python
- Sentiment Analysis - XLM-RoBERTa
- Pandas
- Transformers
- NLP
- Hugging Face
- Power BI
Try It Your Own! △◯✕◻
Interactive Sentiment Dashboard
63% negative · 27% neutral · 10% positive | 56,677 reactions, clickable filters, PlayStation Remote
Conclusion
The end of PlayStation discs post landed as a clear, around the world rejection. Of the 56,677 reactions:
- 63% were negative reactions.
- 27% were neutral reactions.
- 10% were positive.
An average sentiment of -0.44 on a scale of [-1, +1]. The negative camp outnumbers the positive one by more than 500%, in other words there were over six times as many negative reactions as positive ones.
Most hype led by this tweet: "the final nail in the coffin of the company I once loved" at +22K likes.
Takeaway
This project was my dive into social sentiment analysis, and it taught me a lot:
- Tweets collection.
- Finding the right pre-trained AI model that is multilingual and tweet-tuned.
- The insight only lands if people can touch it. Pairing a Python pipeline with an interactive, on brand dashboard turns a plain CSV into something a stakeholder will actually explore.
Resources
Explore the interactive dashboard: