Skip to content

Export the polars object as an R DataFrame

Description

This S3 method is a shortcut for as_polars_df(x, …)$to_struct()$to_r_vector(struct = "dataframe").

Usage

## S3 method for class 'polars_data_frame'
as.data.frame(
  x,
  ...,
  uint8 = c("integer", "raw"),
  int64 = c("double", "character", "integer", "integer64"),
  date = c("Date", "IDate"),
  time = c("hms", "ITime"),
  decimal = c("double", "character"),
  as_clock_class = FALSE,
  ambiguous = c("raise", "earliest", "latest", "null"),
  non_existent = c("raise", "null")
)

# S3 method for class 'polars_lazy_frame'
as.data.frame(
  x,
  ...,
  uint8 = c("integer", "raw"),
  int64 = c("double", "character", "integer", "integer64"),
  date = c("Date", "IDate"),
  time = c("hms", "ITime"),
  decimal = c("double", "character"),
  as_clock_class = FALSE,
  ambiguous = c("raise", "earliest", "latest", "null"),
  non_existent = c("raise", "null")
)

Arguments

x A polars object
Passed to as_polars_df().
uint8 Determine how to convert Polars’ UInt8 type values to R type. One of the followings:
  • “integer” (default): Convert to the R’s integer type.
  • “raw”: Convert to the R’s raw type. If the value is null, export as 00.
int64 Determine how to convert Polars’ Int64, UInt32, or UInt64 type values to R type. One of the followings:
  • “double” (default): Convert to the R’s double type. Accuracy may be degraded.
  • “character”: Convert to the R’s character type.
  • “integer”: Convert to the R’s integer type. If the value is out of the range of R’s integer type, export as NA_integer\_.
  • “integer64”: Convert to the bit64::integer64 class. The bit64 package must be installed. If the value is out of the range of bit64::integer64, export as bit64::NA_integer64\_.
date Determine how to convert Polars’ Date type values to R class. One of the followings:
  • “Date” (default): Convert to the R’s Date class.
  • “IDate”: Convert to the data.table::IDate class.
time Determine how to convert Polars’ Time type values to R class. One of the followings:
  • “hms” (default): Convert to the hms::hms class. If the hms package is not installed, a warning will be shown.
  • “ITime”: Convert to the data.table::ITime class. The data.table package must be installed.
decimal Determine how to convert Polars’ Decimal type values to R type. One of the followings:
  • “double” (default): Convert to the R’s double type.
  • “character”: Convert to the R’s character type.
as_clock_class A logical value indicating whether to export datetimes and duration as the clock package’s classes.
  • FALSE (default): Duration values are exported as difftime and datetime values are exported as POSIXct. Accuracy may be degraded.
  • TRUE: Duration values are exported as clock_duration, datetime without timezone values are exported as clock_naive_time, and datetime with timezone values are exported as clock_zoned_time. For this case, the clock package must be installed. Accuracy will be maintained.
ambiguous Determine how to deal with ambiguous datetimes. Only applicable when as_clock_class is set to FALSE and datetime without timezone values are exported as POSIXct. Character vector or expression containing the followings:
  • “raise” (default): Throw an error
  • “earliest”: Use the earliest datetime
  • “latest”: Use the latest datetime
  • “null”: Return a NA value
non_existent Determine how to deal with non-existent datetimes. Only applicable when as_clock_class is set to FALSE and datetime without timezone values are exported as POSIXct. One of the followings:
  • “raise” (default): Throw an error
  • “null”: Return a NA value

Value

An R data frame

Examples

library("polars")

df <- as_polars_df(list(a = 1:3, b = 4:6))

as.data.frame(df)
#>   a b
#> 1 1 4
#> 2 2 5
#> 3 3 6
as.data.frame(df$lazy())
#>   a b
#> 1 1 4
#> 2 2 5
#> 3 3 6