corny85
1
Hello,
I’m a beginner with Julia.
I’ve got a dataframe called data that i converted in an array of floats.
data_temp = deepcopy(data)
array=Matrix(data_temp[:,2:size(data_temp,2)])
df=Array{Float64}(array)
Now, i want to extract from the array df (10 rows and 5 columns)
- a vector{Float64} including the smallest values for the 3 first columns and the highest values for the 2 last columns
- a vector{Float64} including the highest values for the 3 first columns and the smallest values for the 2 last columns
I don’t know how to do it.
Thanks in advance for your help
nilshg
2
You don’t need a Matrix at all:
vec_1 = [minimum.(eachcol(df[!, 1:3]); maximum.(eachcol(df[!, 4:5]))]
corny85
3
I’ve tried:
bo=[minimum(df[:,1:3],dims=1);maximum(df[:,4:5],dims=1)]
But it doesn’t work.
Why ?
minimum(df[:,1:3],dims=1)
gives a 1x3
matrix, which is not a vector. Maybe you want to collect
that output so you can vcat
them.
The error is pretty self-explanatory imo. Make sure you read the error messages and debug piece by piece.
corny85
5
ok but how can i concatenate the 1x3 matrix and the 1x2 matrix ?
bo=vcat(minimum(df[:,1:3],dims=1),maximum(df[:,4:5],dims=1))
doesn’t work
The vcat
here is exactly the same as ;
above.
You can use hcat
or, as I wrote above, use collect
Please read the responses carefully.
corny85
7
You are right !
Sorry…and thanks a lot !