小编Dus*_*tin的帖子

转换JSON数据的性能问题

我有一些JSON格式的数据,我想做一些可视化.数据(大约10MB的JSON)加载速度非常快,但是将其重新整形为可用的形式需要几分钟,而不到100,000行.我有一些有用的东西,但我认为它可以做得更好.

从我的示例数据开始可能最容易理解.

假设您在以下命令中运行以下命令/tmp:

curl http://public.west.spy.net/so/time-series.json.gz \
    | gzip -dc - > time-series.json
Run Code Online (Sandbox Code Playgroud)

你应该能够在这里看到我想要的输出(一段时间后):

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)
Run Code Online (Sandbox Code Playgroud)

json r

2
推荐指数
1
解决办法
530
查看次数

在向量上操作时,如何处理函数中的特殊值?

我已经找到了将向量应用于我认为采用单个值的函数的魔力,但这似乎发生在我无法理解的区域中,这导致我遇到的奇怪行为.

例如,我有这个时间格式化功能:

timeFmt <- function(s) {
    sizes <- c('µs', 'ms', 's')
    e <- floor(log(s, 1000))
    suffix <- sizes[e+1]
    prefix <- sprintf("%g", s/(1000 ^ floor(e)))
    paste(prefix, suffix, sep="")
}
Run Code Online (Sandbox Code Playgroud)

它有两个问题:

  1. 供应0时会中断.
  2. 当提供的值> = 1e9时,它会中断

所以,它有这个好的行为:

> timeFmt(10 ** (0:8))
[1] "1µs"   "10µs"  "100µs" "1ms"   "10ms"  "100ms" "1s"    "10s"   "100s" 
Run Code Online (Sandbox Code Playgroud)

......但这种令人讨厌的行为:

> tf(c(0, 1, 10, 100, 1000, 1e9))
[1] "NaNNA" "1µs"   "10µs"  "100µs" "1ms"   "1NA"  
Run Code Online (Sandbox Code Playgroud)

如何让我的函数为0返回"0",并使用"s"后缀为更大的值?做一个"if"语句和min的明显事情是行不通的,因为它们对传入的整个向量进行操作.

r

2
推荐指数
1
解决办法
65
查看次数

Memcached和Sharding

我是memcached和sharding的新手.

我去过两篇文章.我需要在我的应用程序中实现它们.

我经历的文章很好,但没有一个给我如何使用这些技术.

任何人都可以向我建议我可以实际配置它们并运行样本的链接.

我想首先实现memcached,然后分片,然后将它们两者结合在一起.

谢谢你的帮助.

java memcached sharding

1
推荐指数
1
解决办法
3530
查看次数

我如何绘制彩色星星?

我有一个5x7矩阵我想绘制为雷达或蜘蛛图?例如:

stars(mtcars[, 1:7], locations = c(0,0), radius = FALSE,
      key.loc=c(0,0), main="Motor Trend Cars", lty = 2)
Run Code Online (Sandbox Code Playgroud)

明星情节

我希望每一行都是不同的颜色(和/或不同的风格),这样我就可以看出我正在看的东西.

plot r

1
推荐指数
1
解决办法
3297
查看次数

标签 统计

r ×3

java ×1

json ×1

memcached ×1

plot ×1

sharding ×1