R: Solr stats

solr_stats {solrium} | R Documentation

## Solr stats

### Description

Returns only stat items

### Usage

    solr_stats(conn, name = NULL, params = list(q = "*:*", stats.field = NULL,
      stats.facet = NULL), body = NULL, callopts = list(), raw = FALSE,
      parsetype = "df", ...)

### Arguments

`conn` | A solrium connection object, see SolrClient
`name` | Name of a collection or core. Or leave as `NULL` if not needed.
`params` | (list) a named list of parameters, results in a GET reqeust as long as no body parameters given
`body` | (list) a named list of parameters, if given a POST request will be performed
`callopts` | Call options passed on to [crul::HttpClient]
`raw` | (logical) If TRUE, returns raw data in format specified by wt param
`parsetype` | (character) One of 'list' or 'df'
`...` | Further args to be combined into query

### Value

XML, JSON, a list, or data.frame

### Stats parameters

- q Query terms, defaults to '*:*', or everything.

- stats.field The number of similar documents to return for each result.

- stats.facet You can not facet on multi-valued fields.

- wt (character) Data type returned, defaults to 'json'. One of json or xml. If json, uses `fromJSON` to parse. If xml, uses `xmlParse` to parse. csv is only supported in `solr_search` and `solr_all`.

- start Record to start at, default to beginning.

- rows Number of records to return. Defaults to 10.

- key API key, if needed.

### References

See http://wiki.apache.org/solr/StatsComponent for more information on Solr stats.

### See Also

`solr_highlight()`, `solr_facet()`, `solr_search()`, `solr_mlt()`

### Examples

    ## Not run:
    # connect
    (cli <- SolrClient$new(host = "api.plos.org", path = "search", port = NULL))

    # get stats
    solr_stats(cli, params = list(q='science', stats.field='counter_total_all'),
      raw=TRUE)
    solr_stats(cli, params = list(q='title:"ecology" AND body:"cell"',
       stats.field=c('counter_total_all','alm_twitterCount')))
    solr_stats(cli, params = list(q='ecology',
      stats.field=c('counter_total_all','alm_twitterCount'),
      stats.facet='journal'))
    solr_stats(cli, params = list(q='ecology',
      stats.field=c('counter_total_all','alm_twitterCount'),
      stats.facet=c('journal','volume')))

    # Get raw data, then parse later if you feel like it
    ## json
    out <- solr_stats(cli, params = list(q='ecology',
      stats.field=c('counter_total_all','alm_twitterCount'),
      stats.facet=c('journal','volume')), raw=TRUE)
    library("jsonlite")
    jsonlite::fromJSON(out)
    solr_parse(out) # list
    solr_parse(out, 'df') # data.frame

    ## xml
    out <- solr_stats(cli, params = list(q='ecology',
      stats.field=c('counter_total_all','alm_twitterCount'),
      stats.facet=c('journal','volume'), wt="xml"), raw=TRUE)
    library("xml2")
    xml2::read_xml(unclass(out))
    solr_parse(out) # list
    solr_parse(out, 'df') # data.frame

    # Get verbose http call information
    solr_stats(cli, params = list(q='ecology', stats.field='alm_twitterCount'),
       callopts=list(verbose=TRUE))

    ## End(Not run)

[Package solrium version 1.0.0 Index]