A Schema is a list of Fields, which map names to
Arrow data types. Create a Schema when you
want to convert an R data.frame to Arrow but don't want to rely on the
default mapping of R types to Arrow types, such as when you want to choose a
specific numeric precision, or when creating a Dataset and you want to
ensure a specific schema rather than inferring it from the various files.
Many Arrow objects, including Table and Dataset, have a $schema method
(active binding) that lets you access their schema.
$WithMetadata(metadata): returns a new Schema with the key-value
metadata set. Note that all list elements in metadata will be coerced
to character.
Active bindings
$names: returns the field names (called in names(Schema))
$num_fields: returns the number of fields (called in length(Schema))
$fields: returns the list of Fields in the Schema, suitable for
iterating over
$HasMetadata: logical: does this Schema have extra metadata?
$metadata: returns the key-value metadata as a named list.
Modify or replace by assigning in (sch$metadata <- new_metadata).
All list elements are coerced to string.