У меня есть вложенное tibble
в следующей форме:
library(purrr)
library(dplyr)
ex <- tibble(data = list(val = rnorm(12),
val = rnorm(5),
val = rep(NA, 5),
val = c(rnorm(3), NA)),
p1 = rnorm(4),
p2 = rnorm(4)) %>%
mutate(data = map(data, tibble))
и я хотел бы, чтобы новый столбец заполнялся значениями p , рассчитанными из ks.test
для каждого tibble
в data
по сравнению с нормальным распределением, параметры которого хранятся в p1
и p2
.
Я пробовал что-то вроде
ex %>%
mutate(ks_test = map(data,
~tryCatch( #to avoid problems with tibbles filled only by NAs
ks.test(x = .$val,
y = "pnorm",
mean = .$p1,
sd = .$p2),
error = function(e) list(p.value = NA))),
ks_pvalue = map_dbl(ks_test, "p.value"))
который, к сожалению, не в состоянии выполнить тест, предоставляя только NA.
Пожалуйста, вы можете помочь мне исправить этот кусок кода?
Спасибо.