Define a filter for the eBird Basic Dataset (EBD) based on a set of
years. 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_year(x, year, replace = FALSE)
auk_ebd
or auk_sampling
object; reference to file created by
auk_ebd()
or auk_sampling()
.
integer; years to filter to.
logical; multiple calls to auk_year()
are additive,
unless replace = FALSE
, in which case the previous list of years to
filter by will be removed and replaced by that in the current call.
An auk_ebd
object.
For filtering to a range of dates use auk_date()
; however,
sometimes the goal is to extract data for a given year or set of years, in
which case auk_year()
is simpler. In addition, auk_year()
can be used
to get data from discontiguous sets of years (e.g. 2010 and 2012, but not
2011), which is not possible with auk_date()
. Finally, auk_year()
can
be used in conjunction with auk_date()
to extract data from a given range
of dates within a set of years (see example below).
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_state()
,
auk_time()
# years to filter to
years <- c(2010, 2012)
# set up filter
system.file("extdata/ebd-sample.txt", package = "auk") %>%
auk_ebd() %>%
auk_year(year = years)
#> 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: all
#> Counties: all
#> BCRs: all
#> Bounding box: full extent
#> Years: 2010, 2012
#> 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_year(ebd, years)
#> 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: all
#> Counties: all
#> BCRs: all
#> Bounding box: full extent
#> Years: 2010, 2012
#> 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
# filter to may and june of 2010 and 2012
system.file("extdata/ebd-sample.txt", package = "auk") %>%
auk_ebd() %>%
auk_year(year = c(2010, 2012)) %>%
auk_date(date = c("*-05-01", "*-06-30"))
#> 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: all
#> Counties: all
#> BCRs: all
#> Bounding box: full extent
#> Years: 2010, 2012
#> Date: *-05-01 - *-06-30
#> 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