昨日はバレンタインでしたね!
昨日2/14は、性聖なる日バレンタインでしたね。
渋谷で、デモが開かれたり、
テレビでは恋愛(とチョコ消費)を促し、愛(とお金の匂い)のあふれる日でした!
おまけに今年は日曜日。
いつもは仕事でそんなに騒げないパーティピーポーも大騒ぎできたはず?
ということは、こんな日にはSNSにだってリア充が溢れているはず・・・
と思い、Pythonを駆使して調べてみました!
データ収集
TwitterのストリーミングAPIを使って、
バレンタイン、または、チョコと書かれたツイートをリアルタイムで収集し続けます。
2/14の0時過ぎかから、24時になるまでデータを集めました。
というわけで、一日のツイート数はこんな感じ。
- 0時のツイート数が少ないのは、設定に手間取ったため
- 深夜と夕方にツイート数が減少する
午前中にツイート数が上がってるのがおもしろいですね。
もうちょっと全体感を見てみる
位置情報がついていることものを調べましょう。
上位5都道府県を見てみます。
順位 | 都道府県 | ツイート数 |
---|---|---|
1 | 東京 | 18 |
2 | 京都 | 5 |
3 | 大阪 | 4 |
4 | 愛知 | 4 |
5 | 静岡 | 3 |
うーん、なんとも。
サンプル数がそもそも少なすぎますね。
まあ、人口を考えると、こんな感じ、、、か?
ツイートの中身を見てみる
ここからが、本番です。
データマイニングをすることで、
きゃっきゃっうふふうふうしている
リア充たちの生活が見られるはずです。
非リアのみなさん、殴る壁の用意は良いですか?
データからつぶやき部分だけを取り出し、
形態素解析という処理をかけて、名詞だけ取り出します。
その名詞の出現頻度から、クラスタリングをかけて
全つぶやきを10個のグループに分類してみます。
(注:10個にしたのは特に考えなしです)
クラスター内のつぶやき数(つぶやき数ごとに並び替えてます)
クラスター | つぶやき数 |
---|---|
0 | 21 |
9 | 79 |
2 | 388 |
1 | 419 |
7 | 558 |
6 | 734 |
4 | 1751 |
3 | 2200 |
8 | 2353 |
5 | 5084 |
前処理もきちんとしていないので、 微妙そうなクラスタもありそうですが・・・
ひとまず見ていきましょう
クラスター0
絵のリツイートに関するクラスターのようです。 私はイラストが描けないので、
絵が描けるひとが羨ましいです。バレンタインはフランで描きました。
— 紅月翼 (@koudukitsubasa) 2016, 2月 14
「チョコ……ゥゥ…………。」#FGO #バレンタイン pic.twitter.com/8ejwTKmNoO
クラスター9
【2016.2.14】
— back number (@back_numberBOT0) 2016, 2月 14
back number × バレンタイン#backnumber好きな人RT#バレンタイン pic.twitter.com/OwokGU770o
back numberというバンドのbotらしいです。
恋愛ソングかな。
クラスター2
\弘光ハピバ♡企画/
— 映画「ヒロイン失格」公式 (@heroine_movie) 2016, 2月 13
本日2/14は、弘光くんの誕生日ということでフォロー&RTキャンペーンやります‼️抽選で、サイン入プレス1名様にプレゼント🎁💕
#ヒロイン失格 #バレンタイン https://t.co/hdFxXvU41D pic.twitter.com/fm0GsfZ3E6
これは映画の告知キャンペーンでしょうか。 恋愛映画っぽくこれまたバレンタインっぽいですね。
--ここまであんまり求めてたものとは違いますね。。。--
クラスター1
今日は、いよいよ #バレンタイン 。
— Panasonic Japan公式 (@Panasonic_cp) 2016, 2月 14
チョコと一緒に、ふだんは言えない本当の気持ちを大切な人に伝えて、身も心もほっこりする1日にしてみませんか。#愛してるで暖めよう #ふだんプレミアム https://t.co/UoWdL6wK8N
パナソニックさんのこのつぶやきに関するリツイートです。
ほっこりしますね。
そうそう、こういうのがみたかったんだよ!
いやあ〜やっぱりバレンタインって良いですね!
クラスター7
バレンタイン pic.twitter.com/tAL4uqjqFE
— も (@kireina_mochi) 2016, 2月 13
悲しくなるだろ!
クラスター6
@misuyaさんという方のつぶやきのRTクラスタです。
ユーザーさんが鍵をかけていて見えませんが、
どうやらポケモンを模したお菓子を作成したようです。
すごいですね。
クラスター4,5,8
数が多いところに来ました。
この3つは雑談系クラスタ!
よかった、やっぱりみんなちゃんとバレンタインしてますね!
4は今日チョコもらったとか、もらえなかったとか、好きな人いないから用意していないとかがメインでした。
5は二次元系の話題が多い感じです。(おそ松さん人気ですねえ)
8は実際にお菓子をたべたとか行動系がメインな感じでした。
いやあ、数が圧倒的なのが二次元系ってのは引っかかりますが、
それでもお菓子食べた系が2位、バレンタインっぽい日常ツイートが4位なのは良かった良かった。
ん、あれ、3位?
3位は?
クラスター3(3位)
バレンタイン ちから すべて
— eclyce (@eclipse_s) 2016, 2月 13
よわい チョコは 死ぬ
サバンナと おなじ pic.twitter.com/MYA421t2EP
おいこら
結論:
お前らもっとちゃんとバレンタインしろ
良かった。それでも、ゴリラに関するツイート数が3位でほんとに良かった。。。
おまけ
使用言語:Python
使用言語:Python(大事なことなので二回言いました)
モジュール
ツイート収集
- requestモジュール
- Aouth_lib
- sqlite3
データ処理
- tinydb
- collectios.Counter
データ分析
- numpy
- matplotlib
- pandas
- Janome
- scilit-learn
- ipython notebook