Julia 什么';茱莉亚';s的R'解决方案;s因子概念?

Julia 什么';茱莉亚';s的R'解决方案;s因子概念?,julia,Julia,因子是R中的一种向量,其元素为 也可以排序的分类值。将存储这些值 内部为带标记级别的整数 R中的# >x=c(“高”、“中”、“低”、“高”、“中”) >xf=系数(x) >xf [1] 高-中-低-高-中 级别:高-低-中 >as.numeric(xf) [1] 1 3 2 1 3 >xfo=系数(x,级别=c(“低”、“中”、“高”),有序=真) >xfo [1] 高-中-低-高-中 级别:低

因子是R中的一种向量,其元素为 也可以排序的分类值。将存储这些值 内部为带标记级别的整数

R中的
#
>x=c(“高”、“中”、“低”、“高”、“中”)
>xf=系数(x)
>xf
[1] 高-中-低-高-中
级别:高-低-中
>as.numeric(xf)
[1] 1 3 2 1 3
>xfo=系数(x,级别=c(“低”、“中”、“高”),有序=真)
>xfo
[1] 高-中-低-高-中
级别:低<中<高
>as.numeric(xfo)
[1] 3 2 1 3 2

我检查了约翰·迈尔斯·怀特的(可能是obsolote)——似乎没有
因子
这样的概念。是否经常使用因子,julia对此问题的解决方案是什么?

数据帧包中的
PooledDataArray
是对应于R因子的一种可能的替代方案。下面使用它实现您的示例:

julia> using DataFrames # install with Pkg.add(DataFrames) if required

julia> x = ["high" , "medium" , "low" , "high" , "medium"];

julia> xf = PooledDataArray(x)
5-element DataArrays.PooledDataArray{ASCIIString,UInt32,1}:
 "high"  
 "medium"
 "low"   
 "high"  
 "medium"

julia> xf.refs
5-element Array{UInt32,1}:
 0x00000001
 0x00000003
 0x00000002
 0x00000001
 0x00000003

julia> xfo = PooledDataArray(x,["low","medium","high"]);

julia> xfo.refs
5-element Array{UInt32,1}:
 0x00000003
 0x00000002
 0x00000001
 0x00000003
 0x00000002

categularrays.jl
categularrays
类似于因子

julia> using DataFrames # install with Pkg.add(DataFrames) if required

julia> x = ["high" , "medium" , "low" , "high" , "medium"];

julia> xf = PooledDataArray(x)
5-element DataArrays.PooledDataArray{ASCIIString,UInt32,1}:
 "high"  
 "medium"
 "low"   
 "high"  
 "medium"

julia> xf.refs
5-element Array{UInt32,1}:
 0x00000001
 0x00000003
 0x00000002
 0x00000001
 0x00000003

julia> xfo = PooledDataArray(x,["low","medium","high"]);

julia> xfo.refs
5-element Array{UInt32,1}:
 0x00000003
 0x00000002
 0x00000001
 0x00000003
 0x00000002