Qiita
JavaScript
TypeScript
データ分析
いいね

「いいな〜」とは、いいねした人のことです。(「iine」に〇〇した人を表す「er」をつけて「iiner」)

先ほど Qiitaいいな〜ランキング を発表しましたが、ここで取得したユーザー毎のいいねした数を用いてユーザーの分析をしてみました。

これまでユーザーのContributionsや記事のいいね数を用いた分析は山ほど見てきましたが、いいねした数での分析はおそらくQiita史上初の試み(大袈裟)で、その中で新たな発見がいくつかありました。

以下、「いいね数」という表記はいいねした数を表します。

TL;DR

データ分析

2019/01/08頃に取得したデータです。取得方法は こちら を参照してください。

有効アカウント数

アカウント数
全アカウント数 308,635
停止アカウント 15,532
エラー 2
有効アカウント 293,101

有効アカウントは全ユーザー数 - 停止アカウント - エラーです。以降ユーザー数の母数として使用します。

ユーザー活動状況

記事数・Contributions・いいね数からユーザーの活動状況を確認してみます。

ユーザー数 有効アカウント数
に対する割合
記事数>=1
のユーザー
43,633 14.9%
Contributions>=1
のユーザー
42,598 14.5%
いいね数>=1
のユーザー
117,494 40.1%
ユーザー数 有効アカウント数
に対する割合
記事数0
のユーザー
249,468 85.1%
Contributions0
のユーザー
250,503 85.5%
いいね数0
のユーザー
175,607 59.9%
未活動ユーザー 167,450 57.1%

未活動ユーザーとは記事数/Contributions/いいね数の全てが0のユーザーです。
未活動ユーザーの分類としては以下が考えられます。

  • 記事閲覧だけのROM専ユーザー
  • ストックだけ使用するのROM専ユーザー
  • ユーザー登録したけど結局使っていないアカウント
  • スパムユーザー(スパム記事は削除済みでアカウントだけ残っている)

記事を書かないユーザーが多いことは Qiitaのいろいろランキング2018 など他の方が書いた記事でも明らかになっていますが、いいねも使用しないユーザーが6割近くいることが分かりました。

いいね数0のユーザー数と未活動ユーザー数はだいぶ近い数値なので、いいねの有無でユーザーが未活動かどうかを判断できそうです。

記事数・Contributions

件数
全記事数 368,453
Contributions 6,391,199
件数 Contributions
に対する割合
記事へのいいね数 6,227,655 97.7%
記事へのいいね以外 149,485 2.3%

QiitaのContributionsは書いた記事に対するいいねの他に、コメントへのいいね、編集リクエストがあります。
ですがこれらのContributionsは全体から見るとほんの僅かのようです。

いいね数別ユーザー統計

いいね数 ユーザー数 総いいね数
0 175,579 (59.9%) 0 ( 0.0%)
1-9 65,746 (22.4%) 190,560 ( 3.0%)
10-99 37,273 (12.7%) 1,315,349 (21.0%)
100-999 13,915 ( 4.7%) 3,646,094 (58.3%)
1000-9999 583 ( 0.2%) 992,671 (15.9%)
10000以上 5 ( 0.0%) 108,357 ( 1.7%)

有効アカウントの中でいいね数100以上のユーザーは1.4万人で全体の5%未満なのですが、総いいね数のうち75%以上を生み出しているようです。
母数からいいね数0のユーザーを除外してもいいね数100以上のユーザーは12%程度です。
いいね数の大半は少数のユーザーが生み出していることがわかります。

image.png

最終いいね日別ユーザー統計

最終いいね日とは、ユーザーが最後にいいねした日の推定値です。

ユーザーの「いいねした記事」の1ページ目の中から最新の投稿日を取得してこれを最終いいね日としました。

最後にいいねしてから日が経っているユーザーは離脱ユーザーと推測できます。
逆に最終いいね日が最近のユーザーはアクティブユーザーです。

以下は年単位での統計です。

最終いいね日(年) ユーザー数
2011 178
2012 965
2013 2,504
2014 7,364
2015 11,078
2016 17,393
2017 18,845
2018 55,306
2019 3,889

以下は2017年01月以降の月単位統計です。

最終いいね日(月) ユーザー数
2017/01 1,357
2017/02 1,213
2017/03 1,409
2017/04 1,295
2017/05 1,217
2017/06 1,158
2017/07 1,290
2017/08 1,264
2017/09 1,274
2017/10 1,484
2017/11 1,511
2017/12 4,373
2018/01 1,945
2018/02 2,160
2018/03 2,433
2018/04 2,637
2018/05 3,056
2018/06 2,657
2018/07 2,915
2018/08 3,235
2018/09 4,271
2018/10 4,977
2018/11 6,227
2018/12 18,793
2019/01 3,889

image.png

毎年12月が多くなっているのはアドベントカレンダーの影響でしょう。アドベントカレンダーの記事だけいいねして後は放置という離脱ユーザーが大量にいるのでしょうか。

直近一ヶ月間にいいねしたユーザーをアクティブユーザーとすると、データ取得日が1月8日なので2018年12月以降の2.2万人になります。
ただし前述の通り12月は離脱ユーザーが増える月です。2017年以前のデータでは12月は前月の2,3倍になっているので1.2万人程度が12月の離脱ユーザーと推定できます。
そう考えると直近のアクティブユーザーは1万人程度ではないでしょうか。

要再調査

今回はデータ取得時期が悪く、年末年始休みと12月のアドベントカレンダーの影響で正確なアクティブユーザー数が出せませんでした。

また、最終いいね日の算出方法も今回のやり方では確実ではありません。
いいねした日を正確に取得するには Qiita API で記事単位のいいねから取得する必要があります。

API v2 で Qiita の「いいね!」がサポートされました - 他 - Qiita Blog
Qiita API v2ドキュメント - GET /api/v2/items/:item_id/likes

これで全いいねのデータを取得すれば、最終いいね日だけではなく毎月のUU数も算出できます。
記事単位なので全データを取得するには相当時間がかかる計算になるのですが、もしやれそうだったらこちらを使ってもう一度やってみようかと思います。

参考までに

2017年以降に書かれたQiitaデータ分析系記事をざっと検索してみたらこんなにありました。
この記事で書いていない事も色々とあるので、あわせて読むといいかもしれません。