I wrote a function that returns me a list containing a number (odchylka.sr) and a ggplot object (ggpl)
model.ARIMA.RF.fct <- function (l.obs.pomin) {
...
wynik.lst <- list (odchylka.sr, ggpl)
return(wynik.lst)
}
I save the results in a data frame according to
ARIMA.RF.cwu.wyniki <- data.frame(
l.obs.pomin = c(52, 69, 136, 217)
) %>%
mutate(
out = pmap(list (l.obs.pomin), model.ARIMA.RF.fct)
)
I receive
I want the odchylka.sr to be a separate column before the 'out' column.
I can't cope with this task.
I use pmap because my target function has 3 arguments.
When I use the solution from unnest:
ARIMA.RF.cwu.wyniki <- data.frame(
l.obs.pomin = c(52, 69, 136, 217)
) %>%
mutate(
out = pmap(list (l.obs.pomin), model.ARIMA.RF.fct)
)|> unnest(out)
I get a result close to what I expected, but I can't convert it to wide format
library(tidyverse)
function_that_returns_lists <- function(x){
thing_2 <- ggplot () +
geom_point(aes (x = c(1,2,3), y = c(18,5,2)))
tibble(thing_1 = x+1,
thing_2 = list(thing_2)) # properly wrap the outputs for a tibble container ggplots must be in lists
}
df1 <- tibble(
l.obs.pomin = c(52, 69, 136, 217)
) %>%
mutate(
out = pmap_df(list (l.obs.pomin), function_that_returns_lists) # pmap_df so out is more conveniently structured
) |> unnest(out)