Split an index into groups of indexes according to a factor, along either the levels or time periods of the index.
Arguments
- x
A price index, as made by, e.g.,
elemental_index()
.- f
A factor or list of factors to group elements of
x
.- drop
Should levels that do not occur in
f
be dropped? By default all levels are kept.- ...
Further arguments passed to
split.default()
.- margin
Either 'levels' to split over the levels of
x
(the default), or 'time' to split over the time periods ofx
.- value
A list of values compatible with the splitting of
x
, or something that can be coerced into one, recycled if necessary.
Value
split()
returns a list of index objects for each level in f
. The
replacement method replaces these values with the corresponding element of
value
.
See also
Other index methods:
[.piar_index()
,
aggregate.piar_index
,
as.data.frame.piar_index()
,
chain()
,
contrib()
,
head.piar_index()
,
is.na.piar_index()
,
levels.piar_index()
,
mean.piar_index
,
merge.piar_index()
,
stack.piar_index()
,
time.piar_index()
,
window.piar_index()
Examples
index <- as_index(matrix(1:6, 2))
split(index, 1:2)
#> $`1`
#> Period-over-period price index for 1 levels over 3 time periods
#> 1 2 3
#> 1 1 3 5
#>
#> $`2`
#> Period-over-period price index for 1 levels over 3 time periods
#> 1 2 3
#> 2 2 4 6
#>
split(index, c(1, 1, 2), margin = "time")
#> $`1`
#> Period-over-period price index for 2 levels over 2 time periods
#> 1 2
#> 1 1 3
#> 2 2 4
#>
#> $`2`
#> Period-over-period price index for 2 levels over 1 time periods
#> 3
#> 1 5
#> 2 6
#>