Learn R Programming

janitor (version 2.2.0)

convert_to_date: Convert many date and datetime formats as may be received from Microsoft Excel

Description

Convert many date and datetime formats as may be received from Microsoft Excel

Usage

convert_to_date(
  x,
  ...,
  character_fun = lubridate::ymd,
  string_conversion_failure = c("error", "warning")
)

convert_to_datetime( x, ..., tz = "UTC", character_fun = lubridate::ymd_hms, string_conversion_failure = c("error", "warning") )

Value

POSIXct objects for `convert_to_datetime()` or Date objects for `convert_to_date()`.

Arguments

x

The object to convert

...

Passed to further methods. Eventually may be passed to `excel_numeric_to_date()`, `base::as.POSIXct()`, or `base::as.Date()`.

character_fun

A function to convert non-numeric-looking, non-NA values in `x` to POSIXct objects.

string_conversion_failure

If a character value fails to parse into the desired class and instead returns `NA`, should the function return the result with a warning or throw an error?

tz

The timezone for POSIXct output, unless an object is POSIXt already. Ignored for Date output.

Functions

  • convert_to_datetime(): Convert to a date-time (POSIXct)

Details

Character conversion checks if it matches something that looks like a Microsoft Excel numeric date, converts those to numeric, and then runs convert_to_datetime_helper() on those numbers. Then, character to Date or POSIXct conversion occurs via `character_fun(x, ...)` or `character_fun(x, tz=tz, ...)`, respectively.

See Also

Other Date-time cleaning: excel_numeric_to_date(), sas_numeric_to_date()

Examples

Run this code
convert_to_date("2009-07-06")
convert_to_date(40000)
convert_to_date("40000.1")
# Mixed date source data can be provided.
convert_to_date(c("2020-02-29", "40000.1"))
convert_to_datetime(
  c("2009-07-06", "40000.1", "40000", NA),
  character_fun=lubridate::ymd_h, truncated=1, tz="UTC"
)

Run the code above in your browser using DataLab