Я пытался отфильтровать набор данных из 100 точек входа на основе значения первого столбца в наборе данных, чтобы создать две отдельные переменные с моими данными.
Значения фильтруются на основе ноль или 1, а затем я хочу сохранить остальные данные без нуля или единицы из первого столбца. Пока я пробовал следующий код, но, похоже, он работает не очень хорошо.
data1 = zeros(50,2)
data2 = zeros(50,2)
index1 = 0
index2 = 0
for i in 1:100
if data[i,1] < 0.5
data1[index1] = data[i, 2:3]
index+=1
else
data2[index2] = data[i, 2:3]
index2+=1
end
end
Единственное, что я получаю, это ошибка, которую я не могу понять
MethodError: Cannot `convert` an object of type DataFrames.DataFrameRow{DataFrames.DataFrame,DataFrames.SubIndex{DataFrames.Index,UnitRange{Int64},UnitRange{Int64}}} to an object of type Float64
Closest candidates are:
convert(::Type{T}, !Matched::T) where T<:Number at number.jl:6
convert(::Type{T}, !Matched::Number) where T<:Number at number.jl:7
convert(::Type{T}, !Matched::Base.TwicePrecision) where T<:Number at twiceprecision.jl:250
...
Stacktrace:
[1] setindex!(::Array{Float64,2}, ::DataFrames.DataFrameRow{DataFrames.DataFrame,DataFrames.SubIndex{DataFrames.Index,UnitRange{Int64},UnitRange{Int64}}}, ::Int64) at .\array.jl:825
[2] top-level scope at .\In[47]:9