自分のTwitter投稿内のURLを分析してみた
これは何?
次の記事に着想を得て、自分のデータでやってみました。具体的には、2015年6月から現在までの自分のTwitter投稿から、全部のURLを抽出し、ドメイン単位で集計しました。
データの取得
twilog*1に自分の投稿データが保存されていたので、ダウンロードしました。なおTwitterでは自分の投稿をダウンロードする機能が公式に提供*2されていますが、今年7月のインシデントの影響で現在は使えない状況のようです*3。
分析結果
全投稿数は40903でした。Excelで処理するには少し大きいので、手慣れているPythonで分析しました。最終的には、頻度の高い上位40サイトを棒グラフで表示しました。
import collections import itertools import re import pandas as pd df = pd.read_csv( "drive/My Drive/twitter/upura0200827.csv", header=None, names=["id", "timestamp", "text"] ) print(df.loc[0, "text"]) """ 初回の題材はVRらしい。シーズン18の最終回はディープフェイクだったし、技術的な話題を盛り込んでるな。 『相棒シーズン19』10月スタート!水谷豊、21年目の“一心同体” 反町隆史も続投(サンケイスポーツ) #Yahooニュース https://news.yahoo.co.jp/articles/dfffd7fab8172ba9d8997f54ab2314259ce7c811 """ pattern = "https?://[\w/:%#\$&\?\(\)~\.=\+\-]+" urls = re.findall(pattern, ' '.join(list(itertools.chain(df["text"])))) print(len(urls)) # 12314 domains = [url.split('/')[2] for url in urls] c = collections.Counter(domains) res = pd.DataFrame(c.most_common()[:40]) res.columns = ["Domain", "Frequency"] res.plot.bar(x="Domain", y="Frequency", figsize=(13, 5))
考察
上位10件を以下に示します。最も多い pic.twitter.com
と 3番目の twitter.com
はそれぞれ、画像と引用リツイートだと考えられます。
2、4、6番目はニュースサイトでした。headlines.yahoo.co.jp
と news.yahoo.co.jp
を足すと 942 + 437 = 1379個 で www.nikkei.com
の1205個を上回ります。ニュースの情報源として、主に2種類のサイトを見ていることが読み取れます。8番目にも www.asahi.com
が来ています。残りは技術的なサイトで、自身の技術ブログ upura.hatenablog.com
や Qiita qiita.com
、arXiv arxiv.org
、GitHub github.com
が続きました。
おわりに
本記事では、BuzzFeedの記事に倣って自分のTwitter投稿内のURLを分析しました。個人の興味が色濃く出た結果のように感じます。2017年にソフトウェアエンジニアとして就職した後は少し技術的な投稿が比重が増えている認識なので、時系列で分割した分析も面白そうだなと思っています。