index function

index and related functions

index and related functions

index(.data, ...) index_(.data, ..., .dots) indexif(.data, ...) indexif_(.data, ..., .dots) dotindex(.data, ...) dotindex_(.data, ..., .dots)

Arguments

  • .data: input. This can be JSON input, or an object of class jqr that has JSON and query params combined, which is passed from function to function when using the jqr DSL.
  • ...: Comma separated list of unquoted variable names
  • .dots: Used to work around non-standard evaluation
  • dots: dots

Details

  • index/index_ - queries like: .[], .[0], .[1:5], .["foo"]
  • indexif/indexif_ - queries like: .["foo"]?
  • dotindex/dotindex_ - queries like: .[].foo, .[].foo.bar

Examples

str <- '[{"name":"JSON", "good":true}, {"name":"XML", "good":false}]' str %>% index '{"name":"JSON", "good":true}' %>% indexif(name) '{"name":"JSON", "good":true}' %>% indexif(good) '{"name":"JSON", "good":true}' %>% indexif(that) '{"a": 1, "b": 1}' %>% index '[]' %>% index '[{"name":"JSON", "good":true}, {"name":"XML", "good":false}]' %>% index(0) '["a","b","c","d","e"]' %>% index(2) '["a","b","c","d","e"]' %>% index('2:4') '["a","b","c","d","e"]' %>% index('2:5') '["a","b","c","d","e"]' %>% index(':3') '["a","b","c","d","e"]' %>% index('-2:') str %>% index %>% select(bad = .name) '[{"name":"JSON", "good":true}, {"name":"XML", "good":false}]' %>% dotindex(name) '[{"name":"JSON", "good":true}, {"name":"XML", "good":false}]' %>% dotindex(good) '[{"name":"JSON", "good":{"foo":5}}, {"name":"XML", "good":{"foo":6}}]' %>% dotindex(good) '[{"name":"JSON", "good":{"foo":5}}, {"name":"XML", "good":{"foo":6}}]' %>% dotindex(good.foo)
  • Maintainer: Jeroen Ooms
  • License: MIT + file LICENSE
  • Last published: 2024-12-16