Define a filter for the eBird Basic Dataset (EBD) based on a set of
states. This function only defines the filter and, once all filters have
been defined, auk_filter()
should be used to call AWK and perform the
filtering.
auk_state(x, state, replace = FALSE)
auk_ebd
or auk_sampling
object; reference to file created by
auk_ebd()
or auk_sampling()
.
character; states to filter by. eBird uses 4 to 6 character
state codes consisting of two parts, the 2-letter ISO country code and a
1-3 character state code, separated by a dash. For example, "US-NY"
corresponds to New York State in the United States. Refer to the data frame
ebird_states for look up state codes.
logical; multiple calls to auk_state()
are additive,
unless replace = FALSE
, in which case the previous list of states to
filter by will be removed and replaced by that in the current call.
An auk_ebd
object.
It is not possible to filter by both country and state, so calling
auk_state()
will reset the country filter to all countries, and vice versa.
This function can also work with on an auk_sampling
object if the user only
wishes to filter the sampling event data.
Other filter:
auk_bbox()
,
auk_bcr()
,
auk_breeding()
,
auk_complete()
,
auk_country()
,
auk_county()
,
auk_date()
,
auk_distance()
,
auk_duration()
,
auk_exotic()
,
auk_extent()
,
auk_filter()
,
auk_last_edited()
,
auk_observer()
,
auk_project()
,
auk_protocol()
,
auk_species()
,
auk_time()
,
auk_year()
# state codes for a given country can be looked up in ebird_states
dplyr::filter(ebird_states, country == "Costa Rica")
#> # A tibble: 7 × 4
#> country country_code state state_code
#> <chr> <chr> <chr> <chr>
#> 1 Costa Rica CR "Alajuela" CR-A
#> 2 Costa Rica CR "Cartago" CR-C
#> 3 Costa Rica CR "Guanacaste" CR-G
#> 4 Costa Rica CR "Heredia" CR-H
#> 5 Costa Rica CR "Lim\u001an" CR-L
#> 6 Costa Rica CR "Puntarenas" CR-P
#> 7 Costa Rica CR "San Jos\u001a" CR-SJ
# choose texas, united states and puntarenas, cost rica
states <- c("US-TX", "CR-P")
system.file("extdata/ebd-sample.txt", package = "auk") %>%
auk_ebd() %>%
auk_state(states)
#> Input
#> EBD: /private/var/folders/mg/qh40qmqd7376xn8qxd6hm5lwjyy0h2/T/RtmpBEc62Y/temp_libpath32473f2f276e/auk/extdata/ebd-sample.txt
#>
#> Output
#> Filters not executed
#>
#> Filters
#> Species: all
#> Countries: all
#> States: CR-P, US-TX
#> Counties: all
#> BCRs: all
#> Bounding box: full extent
#> Years: all
#> Date: all
#> Start time: all
#> Last edited date: all
#> Protocol: all
#> Project code: all
#> Duration: all
#> Distance travelled: all
#> Records with breeding codes only: no
#> Exotic Codes: all
#> Complete checklists only: no
# alternatively, without pipes
ebd <- auk_ebd(system.file("extdata/ebd-sample.txt", package = "auk"))
auk_state(ebd, states)
#> Input
#> EBD: /private/var/folders/mg/qh40qmqd7376xn8qxd6hm5lwjyy0h2/T/RtmpBEc62Y/temp_libpath32473f2f276e/auk/extdata/ebd-sample.txt
#>
#> Output
#> Filters not executed
#>
#> Filters
#> Species: all
#> Countries: all
#> States: CR-P, US-TX
#> Counties: all
#> BCRs: all
#> Bounding box: full extent
#> Years: all
#> Date: all
#> Start time: all
#> Last edited date: all
#> Protocol: all
#> Project code: all
#> Duration: all
#> Distance travelled: all
#> Records with breeding codes only: no
#> Exotic Codes: all
#> Complete checklists only: no