splitobs
function
defined in module
MLUtils
splitobs(n::Int; at) -> Tuple
Compute the indices for two or more disjoint subsets of the range
1:n
with splits given by
at
.
julia
>
splitobs
(
100
,
at
=
0.7
)
(
1
:
70
,
71
:
100
)
julia
>
splitobs
(
100
,
at
=
(
0.1
,
0.4
)
)
(
1
:
10
,
11
:
50
,
51
:
100
)
splitobs(data; at, shuffle=false) -> Tuple
Split the
data
into multiple subsets proportional to the value(s) of
at
.
If
shuffle=true
, randomly permute the observations before splitting.
Supports any datatype implementing the
numobs
and
getobs
interfaces.
# A 70%-30% split
train
,
test
=
splitobs
(
X
,
at
=
0.7
)
# A 50%-30%-20% split
train
,
val
,
test
=
splitobs
(
X
,
at
=
(
0.5
,
0.3
)
)
# A 70%-30% split with multiple arrays and shuffling
train
,
test
=
splitobs
(
(
X
,
y
)
,
at
=
0.7
,
shuffle
=
true
)
Xtrain
,
Ytrain
=
train
There are
2
methods for MLUtils.splitobs
:
The following pages link back here:
Data containers
FastAI.jl , learner.jl , tasks/taskdata.jl , MLUtils.jl , splitobs.jl