我想使用purrr根据一些参数生成一些数据。
下面显示的脚本将生成由a
和b
(数据框params
的列)参数化的0到1的beta密度。
library(tidyverse)
a = c(2,4,6)
b = c(10,12,14)
params = expand.grid(a = a, b = b)
gen_den = function(a,b){
x = seq(0,1,0.1)
den = dbeta(x = x, shape1 = a, shape2 = b)
return(den)
}
# Want to assign this as a nested column
params %>%
pmap(gen_den)
我想知道是否可以将pmap
的结果分配给一列,其中每个观察都是一个嵌套数据框。下面显示的是一些所需的输出。此处,data
列是gen_den(a,b)
的输出。
答案 0 :(得分:0)
我认为你需要的只是
params %>%
mutate(den = pmap(params, gen_den))
我自己刚刚问过a tangentially related question,现在也可以为您提供一些有用的变体语法:
params %>%
{mutate(., den = pmap(., gen_den))}
如果您不想多次输入params
,此版本可能会更好看。