The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.

rjstat: read and write JSON-stat with R

Build Status Coverage Status rstudio mirror downloads cran version

Read and write data sets in the JSON-stat format.

Installation:

From CRAN (most people use this):

install.packages('rjstat')

From github (development version):

library(devtools)
install_github("ajschumacher/rjstat")

Usage:

library(rjstat)

oecd.canada.url <- "https://json-stat.org/samples/oecd-canada.json"

# Read from JSON-stat to a list of data frames:
results <- fromJSONstat(readLines(oecd.canada.url))
names(results)

## [1] "Unemployment rate in the OECD countries 2003-2014"
## [2] "Population by sex and age group. Canada. 2012"

# You can also read in using the typically terser IDs rather than labels.
results <- fromJSONstat(readLines(oecd.canada.url), naming="id")
names(results)

## [1] "oecd"   "canada"


# Convert from a list of data frames to a JSON-stat string.
# (The data frames must have exactly one value column.)
library(reshape)
irises <- melt(cbind(iris, Specimen=rep(1:50, 3)),
               id.vars=c("Species", "Specimen"))
irisJSONstat <- toJSONstat(list(iris=irises))
cat(substr(irisJSONstat, 1, 76))

## {"version":"2.0","class":"collection","link":{"item":[{"class":"dataset","id

# You can successfully convert back and forth, but only for the features that
# make sense in both R and JSON-stat.
head(fromJSONstat(irisJSONstat)[[1]])

##   Species Specimen     variable value
## 1  setosa        1 Sepal.Length   5.1
## 2  setosa        1  Sepal.Width   3.5
## 3  setosa        1 Petal.Length   1.4
## 4  setosa        1  Petal.Width   0.2
## 5  setosa        2 Sepal.Length   4.9
## 6  setosa        2  Sepal.Width   3.0

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.