Надеюсь, это то, что вы ищете.
d_out <- tibble(
Id = 1:500,
prob_1_sample = sample(d$Prob_1, 500, replace = T),
prob_2_sample = sample(d$Prob_2, 500, replace = T)
)
Выходные данные
# A tibble: 500 x 3
Id prob_1_sample prob_2_sample
<int> <dbl> <dbl>
1 1 0.8 0
2 2 1 1
3 3 0.8 0.3
4 4 0.1 0
5 5 0.8 0
6 6 0.1 0.8
7 7 0 0
8 8 0.6 1
9 9 1 1
10 10 0.6 0.4
# ... with 490 more rows
Входные данные
structure(list(Prob_1 = c(0.1, 0, 0, 0, 0.3, 0.6, 0.9, 1, 1,
0.6, 0.2, 0.2, 0.6, 0.4, 0.1, 0.1, 0.4, 0.7, 1, 1, 1, 0.8, 0.4,
0.2, 0.1, 0, 0), Prob_2 = c(1, 1, 1, 0.8, 0.5, 0.2, 0.1, 0, 0,
0, 0, 0.1, 0.3, 0.4, 0.5, 0.3, 0, 0, 0, 0.1, 0.4, 0.8, 1, 1,
1, 1, 1)), row.names = c(NA, -27L), class = c("tbl_df", "tbl",
"data.frame")) ->d
Примечание : всегда используйте dput(your_data_frame)
для публикации ваших входных данных.
аккуратный формат облегчает построение графика с использованием ggplot
d_tidy <- d_out %>% pivot_longer(cols = -Id, names_to = "hist_name",values_to = "sample_values")
график плотности
d_tidy %>%
ggplot(aes(x = sample_values, group = hist_name, color = hist_name))+
geom_density()
выход
График диапазона точек для mean
и sd
сравнения.
d_tidy %>%
group_by(hist_name) %>%
summarise(Mean = mean(sample_values), SD = sd(sample_values)) %>%
ggplot(aes(x = factor(hist_name), y = Mean)) +
geom_pointrange(aes(ymax = Mean + SD,
ymin = Mean - SD))
выход