jq {jqr} | R Documentation |
Execute a query with jq
Description
jq
is meant to work with the high level interface in this package.
jq
also provides access to the low level interface in which you can
use jq query strings just as you would on the command line. Output gets
class of json, and pretty prints to the console for easier viewing.
jqr
doesn't do pretty printing.
Usage
jq(x, ...)
## S3 method for class 'jqr'
jq(x, ...)
## S3 method for class 'character'
jq(x, ..., flags = jq_flags())
## S3 method for class 'json'
jq(x, ..., flags = jq_flags())
## S3 method for class 'connection'
jq(x, ..., flags = jq_flags(), out = NULL)
Arguments
x |
|
... |
character specification of jq query. Each element in |
flags |
See |
out |
a filename, callback function, connection object to stream output. Set to 'NULL' to buffer all output and return a character vector. |
See Also
Examples
'{"a": 7}' %>% do(.a + 1)
'[8,3,null,6]' %>% sortj
x <- '[{"message": "hello", "name": "jenn"},
{"message": "world", "name": "beth"}]'
jq(index(x))
jq('{"a": 7, "b": 4}', 'keys')
jq('[8,3,null,6]', 'sort')
# many json inputs
jq(c("[123, 456]", "[77, 88, 99]", "[41]"), ".[]")
# Stream from connection
tmp <- tempfile()
writeLines(c("[123, 456]", "[77, 88, 99]", "[41]"), tmp)
jq(file(tmp), ".[]")
## Not run:
# from a url
x <- 'http://jeroen.github.io/data/diamonds.json'
jq(url(x), ".[]")
# from a file
file <- file.path(tempdir(), "diamonds_nd.json")
download.file(x, destfile = file)
jq(file(file), ".carat")
jq(file(file), "select(.carat > 1.5)")
jq(file(file), 'select(.carat > 4 and .cut == "Fair")')
## End(Not run)
[Package jqr version 1.3.3 Index]