Dataframe 具有特定列类型的Julia数据帧

Dataframe 具有特定列类型的Julia数据帧,dataframe,julia,Dataframe,Julia,我想制作一个大小为N*K的数据帧,我希望一些列是Float64,其他列是Int64。是否有一种特定的方法来定义数据帧,使我可以这样做 这是我目前的做法: df = convert(DataFrame, zeros(Float64, (N, K))) df[:,K-2] = convert(Array{Int64,1}, df[:,K-2]) df[:,K-1] = convert(Array{Int64,1}, df[:,K-1]) 您可以连接两个数据帧: julia> hcat(Dat

我想制作一个大小为
N*K
的数据帧,我希望一些列是
Float64
,其他列是
Int64
。是否有一种特定的方法来定义数据帧,使我可以这样做

这是我目前的做法:

df = convert(DataFrame, zeros(Float64, (N, K)))
df[:,K-2] = convert(Array{Int64,1}, df[:,K-2])
df[:,K-1] = convert(Array{Int64,1}, df[:,K-1])

您可以连接两个数据帧:

julia> hcat(DataFrame(Float64, 3, 5), DataFrame(Int64, 3, 3))
3×8 DataFrames.DataFrame
│ Row │ x1 │ x2 │ x3 │ x4 │ x5 │ x1_1 │ x2_1 │ x3_1 │
├─────┼────┼────┼────┼────┼────┼──────┼──────┼──────┤
│ 1   │ NA │ NA │ NA │ NA │ NA │ NA   │ NA   │ NA   │
│ 2   │ NA │ NA │ NA │ NA │ NA │ NA   │ NA   │ NA   │
│ 3   │ NA │ NA │ NA │ NA │ NA │ NA   │ NA   │ NA   │
DataFrame
构造函数还将类型向量作为参数:

julia> DataFrame([Float64, Float64, Int64, Int64], [Symbol("x$i") for i in 1:4], 3)
3×4 DataFrames.DataFrame
│ Row │ x1 │ x2 │ x3 │ x4 │
├─────┼────┼────┼────┼────┤
│ 1   │ NA │ NA │ NA │ NA │
│ 2   │ NA │ NA │ NA │ NA │
│ 3   │ NA │ NA │ NA │ NA │
可以使用串联构造适当的类型向量:

julia> [repeat([Float64]; outer=4); repeat([Int64]; outer=2)]
6-element Array{DataType,1}:
 Float64
 Float64
 Float64
 Float64
 Int64  
 Int64