チャンネルごとに重複のないスパチャアカウント一覧を作成する。
SELECT DISTINCT cc.author_external_channel_id FROM mv_chat_paids mv INNER JOIN chat_comments cc ON mv.id = cc.id INNER JOIN channels ch ON mv.channel_id = ch.id WHERE mv.video_uploaded_date >= '2020-07-01 00:00:00' AND mv.video_uploaded_date <= '2020-07-31 23:59:59' AND ch.author_name = @author_name
組み合わせ一覧を作成する。
集計対象チャンネル数C2 の組み合わせ一覧を作成する。
28C2 = 28 × 27 ÷ 2 = 378 通り
組み合わせ毎のアカウント一覧類似度を計算する。
参考にさせていただいたサイト様
mieruca-ai.com
類似度係数として何を使用するのが良いのか、知識が無かったので、3つの指標を計算して降順ソートしてプロットしてみる。
どれも同じ様な形なので、どれ使っても問題ない事を確認。
今回はJaccard係数を使用してみる。
( A ∩ B ) ÷ ( A ∪ B ) = Jaccard係数
このJaccard係数0.06未満を脚切り対象とする。脚切りラインも何らかの計算で出すべきだが、グラフの見た目で適当に決定。(標準偏差に従って無い集合って偏差値出して良いんだっけ?微分して変化率から出すのが正しいのかな?)
で、計算結果をエクセル出力
出力パラメータの計算
Jaccard係数から線の太さと色の濃さを計算する。
単純に最小から最大までを10分割して割り振ってみた。