У меня есть матрица с n столбцами и 2 строками. Но для каждого столбца я хотел бы выбрать случайное число. Я искал об этом, но ничего не получил. На данный момент я использую очень маленькие матрицы, но мой код будет применяться к большим матрицам.
У меня есть эта матрица (будут добавлены дополнительные столбцы)
[,1] [,2]
fcMax 2.391416 1.390129
fcMin 2.316555 1.374918
И я хочу получить вектор с dim = n (в данном случае 2, количество столбцов), который создается путем выбора случайного числа для каждого столбца.
2 ответа
Мы можем перебрать столбец с помощью apply
, а затем использовать sample
apply(m1, 2, sample, 1)
Это должно работать:
rand_row = sample(1:nrow(your_matrix), size = ncol(your_matrix), replace = TRUE)
result = your_matrix[cbind(rand_row, 1:ncol(your_matrix))]
Похожие вопросы
Новые вопросы
r
R - это бесплатный язык программирования с открытым исходным кодом и программная среда для статистических вычислений, биоинформатики, визуализации и общих вычислений. Пожалуйста, предоставьте минимальные и воспроизводимые примеры вместе с желаемым результатом. Используйте dput () для данных и укажите все небазовые пакеты с вызовами library (). Не вставляйте изображения для данных или кода, вместо этого используйте блоки кода с отступом. По вопросам, связанным со статистикой, используйте https://stats.stackexchange.com.