2019年2月9日土曜日

自分のツイートを分析してみた

概要

@hawksnowlog のツイートが 10,000 ツイートを達成したのでこれまでにどんなツイートをどれくらいしているのかなど分析してみました

環境

  • Ruby 2.5.1p57

事前準備: データをエクスポートする

「設定とプライバシー 」->「Twitter データ」からエクスポートできます

まずはリクエストします
データがダウンロード可能になると Twitter に登録しているメールアドレスに連絡が来るのでダウンロードします
データは JavaScript ファイルで提供されています
なので JavaScript を使えばすぐに import して使うことができます
が自分は Ruby を使いたかったので一旦 JSON ファイルに整形してから解析しました
また解析するデータは tweets.js のデータのみです

何を解析するか

いろいろ考えたのですがとりあえず以下を出してみたいと思います

  • 全ツイート数
  • 全ツイートをどれくらいの期間で行ったか
  • 月単位でどれくらいツイートを行ったか
  • 日単位でどれくらいツイートを行ったか
  • 月単位でどれくらいリツイートをされたか
  • 月単位でどれくらいファボをされたか
  • ツイートしているデバイスの割合
  • よくツイートされている単語 Top100

解析にあたって Ruby + natto + gruff を使っています
natto は形態素解析用として gruff はグラフの描画に使っています
以下では tweets.js の解析結果を紹介します

全ツイート数

解析対象となるツイート数です

  • 10016 ツイート

全ツイートをどれくらいの期間で行ったか

  • 2016/03/24 - 2019/02/07

で日数だと 1051 日になります
一日の平均ツイート数は 10016 ツイート / 1051 日 = 9.5 ツイート でした

月単位でどれくらいツイートを行ったか

結果のグラフです

月間最高ツイートは 2018/09 で 650 ツイートでした
月間最低ツイートは 2016/03 で 48 ツイートでした
また月平均だと 10016 ツイート/ 36 月= 278.2 ツイート でした

日単位でどれくらいツイートを行ったか

結果のグラフです

日で最高ツイートは 2018/06/05 で 88 ツイートでした
一日の平均は先程も記載しましたが 9.5 ツイートでした

月単位でどれくらいリツイートをされたか

結果のグラフです

最高でも月で 4 リツイートが一番多かったです
リツイートは 0 の月もざらにありました

月単位でどれくらいファボをされたか

結果のグラフです

リツイートよりもファボのほうがされやすいようです
月間最高で 15 最低は 1 でした
ただファボされなかった月はなかったようです

ツイートしているデバイスの割合

結果のグラフです

ほぼブラウザからツイートでした
あとはスマホ (Echofon) が少しだけあるようです

よくツイートされている単語 Top100

条件として MeCab の解析結果で「名詞」かつ「一般」の単語のみをカウントしています
なので実はもっとそれっぽい単語をツイートしている可能性もあります
この辺りの「有用な単語の探し方」は言語処理のプロではないので適当にやっています

  • t -> 926
  • co -> 914
  • https -> 844
  • アプリ -> 479
  • 感じ -> 395
  • 方法 -> 365
  • ー -> 342
  • 自分 -> 294
  • 人 -> 269
  • ファイル -> 214
  • インストール -> 210
  • docker -> 194
  • API -> 191
  • 情報 -> 167
  • 記事 -> 166
  • コンテナ -> 158
  • コマンド -> 157
  • gt -> 154
  • データ -> 154
  • コード -> 152
  • サーバ -> 152
  • ゲーム -> 143
  • アカウント -> 137
  • 久しぶり -> 134
  • あと -> 134
  • 自動 -> 125
  • 環境 -> 110
  • ruby -> 109
  • 画面 -> 102
  • ドメイン -> 100
  • 気 -> 98
  • ブログ -> 97
  • デフォルト -> 97
  • ビルド -> 97
  • Mac -> 94
  • ログイン -> 94
  • s -> 91
  • ページ -> 87
  • 別 -> 85
  • スタンプ -> 85
  • ユーザ -> 84
  • 個人 -> 83
  • mac -> 83
  • 複数 -> 80
  • ライブラリ -> 80
  • Google -> 79
  • サイト -> 78
  • ツール -> 77
  • UI -> 77
  • バージョン -> 77
  • iPhone -> 76
  • swift -> 75
  • p -> 73
  • web -> 73
  • iOS -> 73
  • ネットワーク -> 72
  • 動画 -> 72
  • 他 -> 71
  • or -> 69
  • 文字 -> 66
  • Arduino -> 65
  • 無料 -> 65
  • D -> 65
  • イベント -> 64
  • xcode -> 63
  • デプロイ -> 62
  • ローカル -> 61
  • mini -> 61
  • swagger -> 61
  • 画像 -> 60
  • 名前 -> 60
  • 時代 -> 59
  • 状態 -> 58
  • 変数 -> 58
  • google -> 58
  • 端末 -> 57
  • クラス -> 57
  • ケース -> 57
  • レベル -> 56
  • ドキュメント -> 55
  • 部分 -> 54
  • k -> 54
  • 月 -> 53
  • プロジェクト -> 53
  • golang -> 52
  • ホスト -> 51
  • タグ -> 51
  • クライアント -> 50
  • 次 -> 50
  • Swift -> 50
  • アップデート -> 50
  • メソッド -> 49
  • マイクラ -> 48
  • js -> 48
  • 使い方 -> 48
  • python -> 48
  • ポート -> 47
  • r -> 47
  • デバイス -> 47
  • ボタン -> 46

ちょっと考察してみます
まずトップ3 の t, co, https ですがこれは Twitter にリンクを張った場合、自動的に Twitter は短縮 URL に変換します
つまりツイートにリンクが含まれている内容が多いことを示しています
自分の場合ブログを書いたらそれをツイートしているのでそのせいかなと思います

342 回出現した「ー (伸ばし棒)」ですが確かにこれも納得かなと思います
ツイートの語尾に「かなー」とか確かに記載しているのでそのせいだと思います

「docker」「API」「アプリ」などエンジニアリングっぽい単語も結構出てきているようで、これは少し安心しました

154 回出ている「gt」ですがこれは自分が右矢印を記載する際に「->」と記載しています
そのせいで「>」が「gt」として解釈されているためです
ようするに右矢印を多用していることがわかります

意外だったのは「Mac」「iPhone」「Swift」などの Apple 関連の単語がそこまで多くなったことです
WWDC や Apple Special Event は毎回見ているし、デバイス情報も逐一追っているので結構出ているかなと思ったらそうでもありませんでした
もしかすると小文字は別の単語としてカウントしているので、それも合算するともっと上位に食い込むかもしれません

あとはところどころなぞの英小文字「s」「k」「r」などが入っています
これはよくわからなかったのですが、これらを含む英単語を多くツイートしているのかもしれません
具体的にどんな英単語かは少し思いつきませんでした
「w」だったら納得だったのですが、、

全体的に見るとまぁ納得という結果かなと思います

最後に

自分の Twitter データをエクスポートして分析してみました
やってみるとわかりますが自分だけではなくいろんなユーザの分析も同様にしてみるともっと面白いだろうなと感じました
ユーザの同士の動向からまたおもしろいデータがわかりそうな気がします

たぶんですがこういった研究をしている人はたくさんいると思うので論文を読めばわかりそうな気もしますが、やはり自分でやってみると楽しいものです

0 件のコメント:

コメントを投稿