我有一个包含多个模型的Mable:
pacman::p_load(tidyverse, fable, fpp3, feasts)
retail_data |> autoplot() + facet_wrap(vars(State))
retail_train <- retail_data |> filter(year(Month) <= max(year(Month)) - 4)
ft.mod <- retail_train |> model(
drift = RW(Turnover ~ drift())
)
ft.mod
# A mable: 8 x 3
# Key: State, Industry [8]
State Industry drift
<chr> <chr> <model>
1 Australian Capital Territory Takeaway food services <RW w/ drift>
2 New South Wales Takeaway food services <RW w/ drift>
3 Northern Territory Takeaway food services <RW w/ drift>
4 Queensland Takeaway food services <RW w/ drift>
5 South Australia Takeaway food services <RW w/ drift>
6 Tasmania Takeaway food services <RW w/ drift>
7 Victoria Takeaway food services <RW w/ drift>
8 Western Australia Takeaway food services <RW w/ drift>
i可以看到这样的单个模型的残差:
ft.mod |> filter(State == 'Victoria') |> gg_tsresiduals() # plot appears in pane
但是,如果我尝试在一个oner中做:
ft.mod |> gg_tsresiduals()
Error: gg_tsresiduals() must be used with a mable containing only one model.
我尝试使用map()
::
ft.mod |> map( ~ gg_tsresiduals(.x))
Error: gg_tsresiduals() must be used with a mable containing only one model.
如何使用映射用
gg_tsresiduals()
?迭代每个型号
您可以在
mable
中迭代模型,如下所示:
for (i in 1:length(ft.mod[[1]])) {
ft.mod[i,] |> gg_tsresiduals() |> print()
}