У меня есть матрица в R, и я хотел бы взять одну случайную выборку из каждой строки. Некоторые из моих данных находятся в NA, но при выборе случайной выборки я не хочу, чтобы NA была вариантом для выборки. Как бы я это сделал?
Например,
a <- matrix (c(rep(5, 10), rep(10, 10), rep(NA, 5)), ncol=5, nrow=5)
a
[,1] [,2] [,3] [,4] [,5]
[1,] 5 5 10 10 NA
[2,] 5 5 10 10 NA
[3,] 5 5 10 10 NA
[4,] 5 5 10 10 NA
[5,] 5 5 10 10 NA
Когда я применяю функцию выборки к этой матрице для вывода другой матрицы, я получаю
b <- matrix(apply(a, 1, sample, size=1), ncol=1)
b
[,1]
[1,] NA
[2,] NA
[3,] 10
[4,] 10
[5,] 5
Вместо этого я не хочу, чтобы NA был способен быть выходом, и хочу, чтобы результат был примерно таким:
b
[,1]
[1,] 10
[2,] 10
[3,] 10
[4,] 5
[5,] 10