国立情報学研究所のダウンロードサービスでニコ動のデータセットが公開されていたので、とりあえずダウンロードしてみました
データの形式
行ごとにそれぞれの動画のjsonが書かれたファイルがたくさんあります。
コメントのデータもありますが、ユーザーに関する情報はないみたいです
動画の説明などには<b></b>や<font></font>、<br />などのHTMLタグが含まれていましたので、それらの除去が必要になりそうです
タグの頻度
なんか面白いことできないかなーと考えたんですが、何も思い浮かばなかったので、とりあえず動画のタグの出現頻度を数えてみました。
以下のコマンドで出現頻度上位を出力しています。
zcat *.dat.gz | jq -r '.tags[].tag' | LC_ALL=C sort | uniq -c | LC_ALL=C sort -r | head -n 100
ちなみに下の記事で紹介されていたjqコマンドがjsonの処理に便利です
出現頻度上位100個の表
意外なものが多かったりして驚きました
「もっと評価されるべき」が9位なんですが、こんなにたくさん付けられてるんですね
順位 | 出現頻度 | タグ名 |
---|---|---|
1 | 3593302 | ゲーム |
2 | 1134356 | 実況プレイ動画 |
3 | 874535 | 音楽 |
4 | 549536 | 歌ってみた |
5 | 444108 | 投稿者コメント |
6 | 332877 | アニメ |
7 | 320617 | エンターテイメント |
8 | 231043 | 東方 |
9 | 224274 | もっと評価されるべき |
10 | 218548 | VOCALOID |
11 | 203616 | アイドルマスター |
12 | 167938 | 実況プレイ |
13 | 160928 | ニコニコムービーメーカー |
14 | 152738 | その他 |
15 | 149399 | プレイ動画 |
16 | 139507 | 演奏してみた |
17 | 134763 | スポーツ |
18 | 134676 | ボカロオリジナルを歌ってみた |
19 | 124054 | 初音ミク |
20 | 113043 | ラジオ |
21 | 109552 | @BGM推奨 |
22 | 106936 | ゆっくり実況プレイ |
23 | 97558 | 動物 |
24 | 96833 | 作業用BGM |
25 | 86974 | 政治 |
26 | 86306 | MikuMikuDance |
27 | 82669 | R-18 |
28 | 78062 | PS3 |
29 | 76040 | 踊ってみた |
30 | 74659 | 洋楽 |
31 | 72996 | 日記 |
32 | 68065 | 三国志大戦 |
33 | 67656 | PCゲーム |
34 | 65009 | ボーダーブレイク |
35 | 54854 | 実況 |
36 | 54596 | 車載動画 |
37 | 51098 | FPS |
38 | 50634 | ポケモン |
39 | 50337 | MUGEN |
40 | 48534 | 実況プレイpart1リンク |
41 | 48388 | 鉄道 |
42 | 45943 | UTAU |
43 | 44689 | 例のアレ |
44 | 44313 | 描いてみた |
45 | 43040 | 戦国大戦 |
46 | 42774 | MAD |
47 | 42631 | ミクオリジナル曲 |
48 | 38464 | 自然 |
49 | 37541 | フリーゲーム |
50 | 36356 | エロゲ |
51 | 35754 | 科学 |
52 | 35714 | 縛りプレイ |
53 | 35113 | 料理 |
54 | 35068 | 戦場の絆 |
55 | 34919 | 遊戯王 |
56 | 34029 | Xbox360 |
57 | 32590 | 格闘ゲーム |
58 | 32235 | 字幕プレイ動画 |
59 | 32007 | XBOX360 |
60 | 31813 | 猫 |
61 | 31577 | 鏡音リン |
62 | 31302 | ゲーム実況 |
63 | 31244 | アイドルマスター2 |
64 | 30248 | PV |
65 | 30017 | ゲーム音楽 |
66 | 29908 | BORDERBREAK |
67 | 29644 | VOCALOIDカバー曲 |
68 | 29635 | サムネホイホイ |
69 | 29579 | おっさんホイホイ |
70 | 28188 | 歴史 |
71 | 28153 | テイルズ |
72 | 27707 | バイク |
73 | 27681 | 高画質 |
74 | 27038 | ギター |
75 | 26921 | ボーダーブレイク外部出力 |
76 | 26859 | PSP |
77 | 26345 | パチンコ |
78 | 26231 | 神曲 |
79 | 25599 | ゼルダの伝説 |
80 | 25053 | ピアノ |
81 | 24824 | ニコニコカラオケDB |
82 | 24610 | 弾いてみた |
83 | 24322 | ファイアーエムブレム |
84 | 23811 | 三国志大戦3 |
85 | 23782 | バイオハザード |
86 | 23722 | MHP2G |
87 | 23576 | ガンダム |
88 | 23399 | 三国志大戦3 |
89 | 23369 | ファルコム |
90 | 23258 | 巡音ルカ |
91 | 23234 | ニコニコインディーズ |
92 | 23184 | 作ってみた |
93 | 22971 | パチスロ |
94 | 22490 | 零 |
95 | 22486 | AxisPowersヘタリア |
96 | 22450 | KAITO |
97 | 22094 | Wii |
98 | 21899 | ファミコン |
99 | 21833 | 鏡音レン |
100 | 21694 | ニコニコ歴史戦略ゲー |
コメントの草率を調べる
コメントでどれぐらい草(w)が生えているのかを検証します
一応書いておくと「w」は(笑)と同じように笑いを表す表現としてネット上ではよく使われています。
「wwwwwwww」などのように「w」をたくさんつけたりする場合には「草を生やす」などと言われることがあります。
今回は「w」と「w」が1つ以上末尾に付く場合を対象とします
まずは総コメント数を調べます
複数のファイルが圧縮されているためか(?)zcatで開けなかったので、代わりにtar zxfOを利用
find *.tar.gz -exec tar zxfO {} \; | wc -l
とすると総コメント数が2474388510という結果が得られた
次に草が生えているコメントの数を数えたい。
大部分をカバーしていそうなルールとして、コメントの末尾が「w」か「w」というものを用いた。
find *.tar.gz -exec tar zxfO {} \; | grep -c '\uff57"\|w"'
こちらは879099946となりました
3分の1以上に草が生えていることになります。
こんなに偏ってるなんてすごいデータセットですね!
ネットスラングとかを探すのに役立ちそう……?
全角「w」と半角「w」の個数を比べると、それぞれ全角を含むツイートが784061313になって半角を含むツイートが95320415になりました。
全角のほうが半角よりだいぶ(数値が正しいとすると8倍ぐらい)多いみたいです
足しても上で書いた数にはならないんですが、これは全角と半角両方を含むツイートがあるからです
コメントの長さの分布
コメントごとの文字数の分布も調べてみました。
単純なスクリプトを動かしていたのですが、全部のコメントを処理するのには結構な時間がかかりました。
草(ww)の長さの分布は以下のようなコマンドで数えあげました
この時期はワンライナーにはまっていたので、ひどいコマンドになってしまいましたw
find *.tar.gz -exec tar zxfO {} \; | perl -nle 'if(/((\\uff57|w)+)"/){$str=$1;$str=~s/\\uff57/W/g;print length($str)}' | sort -n | uniq -c | awk '{print $2, $1}'
通常のスケールのグラフだと非常に見づらいグラフになってしまうので、縦軸(頻度)と横軸(長さ)を対数にして両対数グラフにしました
対数軸なのでわかりづらいかもしれませんが、長さ5から10ぐらいを過ぎると頻度が急激に減少していきます
基本的には草の部分の長さが増えるほど頻度が低下していきますが、60文字や75文字などのコメントの長さ制限ギリギリになるとスパイク状の頻度上昇があります
コメント全体の長さは草とは違ってある一定の長さ(10弱)ぐらいまでは頻度が上昇し続けていって、あとは草と同様に減少していきます
もしかしたら長さ1の部分でコメント全体よりも草の方が頻度が多いのが不思議かもしれませんが、今回はコメント末尾の草の長さを数えたので、1よりも長いコメントで末尾に1個の草が生えているものが多いことからこのようなグラフになっています。