Я хочу, чтобы определенное количество строк отсутствовало с вероятностью «X».
Например, взять набор данных iris
и добавить к нему новый столбец со значениями от 0 до 1.
data(iris)
iris <- iris %>% mutate(ind = runif(n = nrow(iris), 0, 1))
Тогда для каждой строки должна отсутствовать каждая из оставшихся переменных Sepal.Width, Sepal.Length, Petal.Width, Petal.Length, Species
с вероятностью, соответствующей этому новому столбцу ind
Например, скажем, у нас есть
set.seed(99)
data(iris)
iris <- iris %>% mutate(ind = runif(n = nrow(iris), 0, 1))
, мы получаем такую таблицу
Sepal.Length Sepal.Width Petal.Length Petal.Width Species ind
1 5.1 3.5 1.4 0.2 setosa 0.802761295
2 4.9 3.0 1.4 0.2 setosa 0.230139103
3 4.7 3.2 1.3 0.2 setosa 0.665336609
Затем после запуска кода - в первой строке Sepal.LengthNA с вероятностью 0,802761295. Тогда Sepal.Width отсутствует с этой вероятностью, ..., затем Вид отсутствует с вероятностью 0,802761295.
Для второй строки Sepal.Length отсутствует с вероятностью 0,230139103.
И такдалее.
Я пытался использовать цикл for и оператор if для выполнения этого, но не могу не чувствовать, что есть более эффективный путь продвижения вперед. Любая помощь в правильном направлении будет принята с благодарностью.