Skip to contents

Read an eBird Basic Dataset file using readr::read_delim(). read_ebd() reads the EBD itself, while read_sampling()` reads a sampling event data file.

Usage

read_ebd(x, sep = "\t", unique = TRUE, rollup = TRUE)

# S3 method for character
read_ebd(x, sep = "\t", unique = TRUE, rollup = TRUE)

# S3 method for auk_ebd
read_ebd(x, sep = "\t", unique = TRUE, rollup = TRUE)

read_sampling(x, sep = "\t", unique = TRUE)

# S3 method for character
read_sampling(x, sep = "\t", unique = TRUE)

# S3 method for auk_ebd
read_sampling(x, sep = "\t", unique = TRUE)

# S3 method for auk_sampling
read_sampling(x, sep = "\t", unique = TRUE)

Arguments

x

filename or auk_ebd object with associated output files as created by auk_filter().

sep

character; single character used to separate fields within a row.

unique

logical; should duplicate grouped checklists be removed. If unique = TRUE, auk_unique() is called on the EBD before returning.

rollup

logical; should taxonomic rollup to species level be applied. If rollup = TRUE, auk_rollup() is called on the EBD before returning. Note that this process can be time consuming for large files, try turning rollup off if reading is taking too long.

Value

A data frame of EBD observations. An additional column, checklist_id, is added to output files if unique = TRUE, that uniquely identifies the checklist from which the observation came. This field is equal to sampling_event_identifier for non-group checklists, and group_identifier for group checklists.

Details

This functions performs the following processing steps:

  • Data types for columns are manually set based on column names used in the February 2017 EBD. If variables are added or names are changed in later releases, any new variables will have data types inferred by the import function used.

  • Variables names are converted to snake_case.

  • Duplicate observations resulting from group checklists are removed using auk_unique(), unless unique = FALSE.

Methods (by class)

  • read_ebd(character): Filename of EBD.

  • read_ebd(auk_ebd): auk_ebd object output from auk_filter()

Functions

  • read_sampling(character): Filename of sampling event data file

  • read_sampling(auk_ebd): auk_ebd object output from auk_filter(). Must have had a sampling event data file set in the original call to auk_ebd().

  • read_sampling(auk_sampling): auk_sampling object output from auk_filter().

See also

Other import: auk_zerofill()

Examples

f <- system.file("extdata/ebd-sample.txt", package = "auk")
read_ebd(f)
#> # A tibble: 398 × 48
#>    checklist_id global_unique_identi…¹ last_edited_date taxonomic_order category
#>    <chr>        <chr>                  <chr>                      <dbl> <chr>   
#>  1 G1131664     URN:CornellLabOfOrnit… 2021-03-29 21:2…           20724 species 
#>  2 G1131665     URN:CornellLabOfOrnit… 2020-02-01 20:3…           20724 species 
#>  3 G1158137     URN:CornellLabOfOrnit… 2018-08-03 18:0…           20674 species 
#>  4 G1158138     URN:CornellLabOfOrnit… 2015-02-23 20:1…           20674 species 
#>  5 G1277458     URN:CornellLabOfOrnit… 2021-04-16 01:4…           20724 species 
#>  6 G1282142     URN:CornellLabOfOrnit… 2022-02-08 17:4…           20724 species 
#>  7 G1362943     URN:CornellLabOfOrnit… 2018-12-25 18:4…           20786 species 
#>  8 G144144      URN:CornellLabOfOrnit… 2019-04-10 10:2…           20674 species 
#>  9 G151064      URN:CornellLabOfOrnit… 2022-01-30 08:2…           20724 species 
#> 10 G161795      URN:CornellLabOfOrnit… 2021-04-16 06:0…           20724 species 
#> # ℹ 388 more rows
#> # ℹ abbreviated name: ¹​global_unique_identifier
#> # ℹ 43 more variables: taxon_concept_id <chr>, common_name <chr>,
#> #   scientific_name <chr>, exotic_code <chr>, observation_count <chr>,
#> #   breeding_code <chr>, breeding_category <chr>, behavior_code <chr>,
#> #   age_sex <chr>, country <chr>, country_code <chr>, state <chr>,
#> #   state_code <chr>, county <chr>, county_code <chr>, iba_code <chr>, …
# read a sampling event data file
x <- system.file("extdata/zerofill-ex_sampling.txt", package = "auk") %>%
  read_sampling()