RData.jl
v1.0.0
读取 R 数据文件(.rda、.RData)并可选择将内容转换为 Julia 等效项。
可以读取任何 R 数据存档,但并非所有 R 类型都可以转换为 Julia。
要从 Julia 运行 R 代码,请参阅 RCall.jl。
来自朱莉娅 REPL:
Pkg . add ( " RData " )
R 数据文件可以通过Gzip (默认)、 Bzip2或Xz方法进行压缩。 RData.jl
支持开箱即用的Gzip压缩文件。要读取Bzip2或Xz压缩文件,必须安装 CodecBzip2.jl 或 CodecXz.jl。
例如,要加载由Bzip2压缩的文件,您必须首先安装所需的编解码器:
Pkg . add ( " CodecBzip2 " )
然后确保在调用RData.load之前加载CodecBzip2 :
using RData
import CodecBzip2
load ( ' some_bzip2_compressed.rda ' )
要从“example.rda”文件读取 R 对象:
using RData
objs = load ( " path_to/example.rda " )
结果是存储在“example.rda”中的所有 R 对象的字典 ( Dict{String, Any}
)。
除非指定了convert=false
关键字选项,否则load()
将尝试自动将 R 对象转换为 Julia 等价物:
R对象 | 朱莉娅对象 | |
---|---|---|
命名向量、列表 | DictoVec | DictoVec 允许按元素索引和名称进行索引,就像 R 向量和列表一样 |
向量 | Vector{T} | T 是合适的 Julia 类型。如果 R 向量包含NA 值,它们将转换为missing ,并且结果Vector 的元素类型为Union{T, Missing} 。 |
因素 | CategoricalArray | 分类数组.jl |
Date | Dates.Date | |
POSIXct 日期时间 | ZonedDateTime | 时区.jl |
数据框 | DataFrame | 数据帧.jl |
compact_xxxseq | UnitRange / StepRange |
如果不支持转换为 Julia 类型(例如 R 闭包或语言表达式), load()
将返回对象的内部 RData 表示形式( RSEXPREC
子类型)。