ニコニコ動画のデータセットを取得しましたが, json形式でした. rjsonパッケージを使う練習をします.
library(rjson)
library(dplyr)
##
## Attaching package: 'dplyr'
##
## 以下のオブジェクトはマスクされています (from 'package:stats') :
##
## filter, lag
##
## 以下のオブジェクトはマスクされています (from 'package:base') :
##
## intersect, setdiff, setequal, union
# jsonデータの各行を読み込みます
lines = readLines("1925.dat")
dat = lines %>% lapply(fromJSON)
中身を見ます. 少しだけ.
dat[[1]]
## $video_id
## [1] "nm19250065"
##
## $thread_id
## [1] 1.352e+09
##
## $title
## [1] "【クロノトリガー全曲アレンジ】ロボのテーマ【p28】"
##
## $description
## [1] "原曲:ロボのテーマ お題:無し<br /><br />PenguinDance→mylist/16882669の他のクロノトリガーアレンジ → mylist/13590939<br />同じお題のAgnus Deiさんの曲 → nm19246257<br />北の岬企画 → mylist/20333196"
##
## $thumbnail_url
## [1] "http://tn-skr2.smilevideo.jp/smile?i=19250065"
##
## $upload_time
## [1] "2012-10-31T23:01:36+09:00"
##
## $length
## [1] 182
##
## $movie_type
## [1] "swf"
##
## $size_high
## [1] 4412912
##
## $size_low
## [1] 4412861
##
## $view_counter
## [1] 28
##
## $comment_counter
## [1] 0
##
## $mylist_counter
## [1] 1
##
## $last_res_body
## [1] ""
##
## $tags
## $tags[[1]]
## $tags[[1]]$tag
## [1] "PenguinDance"
##
## $tags[[1]]$lock
## [1] 1
##
##
## $tags[[2]]
## $tags[[2]]$tag
## [1] "クロノアレンジ企画-北の岬-"
##
## $tags[[2]]$lock
## [1] 1
##
##
## $tags[[3]]
## $tags[[3]]$tag
## [1] "クロノトリガー"
##
## $tags[[3]]$lock
## [1] 1
##
##
## $tags[[4]]
## $tags[[4]]$tag
## [1] "ゲーム音楽アレンジ"
##
## $tags[[4]]$lock
## [1] 1
##
##
## $tags[[5]]
## $tags[[5]]$tag
## [1] "音楽"
##
## $tags[[5]]$category
## [1] 1
##
## $tags[[5]]$lock
## [1] 1
タイトル, 投稿時間, 説明, 長さ, 動画サイズ, タグなどが入っていますね.
再生数だけ取り出します. ロングテールっぽいので, 対数取ってプロットします.
## 再生数だけ取り出す
views = dat %>% lapply(function(x) x$view_counter) %>% as.numeric
## とりあえずヒストグラム
hist(log10(views), prob=TRUE)
## 2525再生未満の動画の割合
views %>% log10 %>% sapply(function(x) x<log10(2525)) %>% mean
## [1] 0.9724
2525再生未満の動画は97%ですか.
次はコメントデータを扱いたいです.