跳至内容

Arrow 格式提供了一个丰富的类型系统,可以处理大多数 R 向量类型;但是,许多 R 向量类型无法完美地通过 Arrow 内存进行往返转换。vctrs 扩展类型使用 vctrs::vec_data()vctrs::vec_restore()vctrs::vec_ptype() 在调用 as_nanoarrow_array()convert_array() 时,以确保往返转换的保真度。

用法

na_vctrs(ptype, storage_type = NULL)

参数

ptype

vctrs::vec_ptype() 返回的 vctrs 原型。原型可以是任意大小,但此处只需要一个零大小的向量。

storage_type

对于 na_extension(),底层值类型。

返回值

一个 nanoarrow_schema

示例

vctr <- as.POSIXlt("2000-01-02 03:45", tz = "UTC")
array <- as_nanoarrow_array(vctr, schema = na_vctrs(vctr))
infer_nanoarrow_ptype(array)
#> POSIXlt of length 0
convert_array(array)
#> [1] "2000-01-02 03:45:00 UTC"