줄리아에서 데이터프레임과 2차원배열 간 변환 방법
코드
Matrix(df)
혹은 Array(df)
함수를 통해 데이터프레임을 같은 크기의 배열로 변환할 수 있다. 배열을 데이터프레임으로 만들 땐 DataFrmae(array, :auto)
를 사용한다. 예전에는 convert
함수를 사용했지만 최근엔 바뀌어 적용되지 않으니 주의.
using DataFrames
julia> A = rand(5,3)
5×3 Matrix{Float64}:
0.678876 0.10431 0.827079
0.621647 0.372007 0.29346
0.756844 0.171237 0.0732631
0.922519 0.0535938 0.121689
0.164058 0.0684278 0.68446
julia> df = DataFrame(A, :auto)
5×3 DataFrame
Row │ x1 x2 x3
│ Float64 Float64 Float64
─────┼────────────────────────────────
1 │ 0.678876 0.10431 0.827079
2 │ 0.621647 0.372007 0.29346
3 │ 0.756844 0.171237 0.0732631
4 │ 0.922519 0.0535938 0.121689
5 │ 0.164058 0.0684278 0.68446
julia> Matrix(df)
5×3 Matrix{Float64}:
0.678876 0.10431 0.827079
0.621647 0.372007 0.29346
0.756844 0.171237 0.0732631
0.922519 0.0535938 0.121689
0.164058 0.0684278 0.68446
julia> Array(df)
5×3 Matrix{Float64}:
0.678876 0.10431 0.827079
0.621647 0.372007 0.29346
0.756844 0.171237 0.0732631
0.922519 0.0535938 0.121689
0.164058 0.0684278 0.68446
julia> Array(df) == Matrix(df)
true
환경
- OS: Windows11
- Version: Julia 1.9.0, DataFrames v1.5.0