Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Convert Julia array to dataframe

I have an array X that I'd like to convert to a dataframe. Upon recommendation from the web, I tried converting to a dataframe and get the following error.

julia> y=convert(DataFrame,x) ERROR:converthas no method matching convert(::Type{DataFrame}, ::Array{Float64,2}) in convert at base.jl:13

When I try DataFrame(x), the conversion works but i get a complaint that the conversion is deprecated.

julia> DataFrame(x) WARNING: DataFrame(::Matrix, ::Vector)) is deprecated, use convert(DataFrame, Matrix) instead in DataFrame at /Users/Matthew/.julia/v0.3/DataFrames/src/deprecated.jl:54 (repeats 2 times)

Is there another method I should be aware of to keep my code consistent?

EDIT: Julia 0.3.2, DataFrames 0.5.10 OSX 10.9.5

julia> x=rand(4,4)
4x4 Array{Float64,2}:
 0.467882   0.466358  0.28144   0.0151388
 0.22354    0.358616  0.669564  0.828768
 0.475064   0.187992  0.584741  0.0543435
 0.0592643  0.345138  0.704496  0.844822

julia> convert(DataFrame,x)
ERROR: `convert` has no method matching convert(::Type{DataFrame}, ::Array{Float64,2}) in convert at base.jl:13
like image 769
W4t3randWind Avatar asked Nov 05 '14 23:11

W4t3randWind


1 Answers

This works for me:

julia> using DataFrames

julia> x = rand(4, 4)
4x4 Array{Float64,2}:
 0.790912  0.0367989  0.425089  0.670121
 0.243605  0.62487    0.582498  0.302063
 0.785159  0.0083891  0.881153  0.353925
 0.618127  0.827093   0.577815  0.488565

julia> convert(DataFrame, x)
4x4 DataFrame
| Row | x1       | x2        | x3       | x4       |
|-----|----------|-----------|----------|----------|
| 1   | 0.790912 | 0.0367989 | 0.425089 | 0.670121 |
| 2   | 0.243605 | 0.62487   | 0.582498 | 0.302063 |
| 3   | 0.785159 | 0.0083891 | 0.881153 | 0.353925 |
| 4   | 0.618127 | 0.827093  | 0.577815 | 0.488565 |

Are you trying something different?

If that doesn't work try posting a bit more code we can help you better.

like image 96
spencerlyon2 Avatar answered Oct 08 '22 06:10

spencerlyon2