JSON形式のデータをいくつか表示しています。データ(約10MBのJSON)はかなり高速に読み込まれますが、使用可能な形式に再構成するには、わずか10万行未満で数分かかります。私は働くものを持っていますが、もっとうまくいくと思います。JSONデータを変換するパフォーマンスの問題
私のsample dataで始まると分かりやすいかもしれません。
あなたは/tmp
で次のコマンドを実行しますと仮定:
curl http://public.west.spy.net/so/time-series.json.gz \
| gzip -dc - > time-series.json
あなたがここに(しばらくして)私の所望の出力を見ることができるはずです。
require(rjson)
trades <- fromJSON(file="/tmp/time-series.json")$rows
data <- do.call(rbind,
lapply(trades,
function(row)
data.frame(date=strptime(unlist(row$key)[2], "%FT%X"),
price=unlist(row$value)[1],
volume=unlist(row$value)[2])))
someColors <- colorRampPalette(c("#000099", "blue", "orange", "red"),
space="Lab")
smoothScatter(data, colramp=someColors, xaxt="n")
days <- seq(min(data$date), max(data$date), by = 'month')
smoothScatter(data, colramp=someColors, xaxt="n")
axis(1, at=days,
labels=strftime(days, "%F"),
tick=FALSE)
以下のアルゴリズムの答えは、最大のスピードアップの原因ですが、RJSONIOがいくつかのテストでrjsonよりも高速であることがわかりました(さまざまなJSON構造を解析する際の信頼性が向上しました)。同様に試してみる価値があるかもしれません - 使い方は同じです。 – Noah
ポインタありがとう。私はかなり恣意的に選んだ。 – Dustin