Я хотел бы запустить симуляцию Монте-Карло.У меня есть data.frame
, где строки являются уникальными идентификаторами, которые имеют вероятность ассоциации с одним из столбцов.Данные, введенные в столбцы, могут рассматриваться как весовые коэффициенты для этой вероятности.Я хочу случайным образом sample
каждую строку в data.frame
на основе весов, перечисленных для каждой строки.Каждая строка должна возвращать только одно значение за цикл.Структура data.frame
выглядит следующим образом:
ID, X2000, X2001, X2002, X2003, X2004
X11, 0, 0, 0.5, 0.5, 0
X33, 0.25, 0.25, 0.25, 0.25, 0
X55, 0, 0, 0, 0, 1
X77, 0.5, 0, 0, 0, 0.5
Для взвешивания «X11» должен возвращать либо X2002, либо X2003, «X33» должен иметь равную вероятность возврата X2000, X2001, X2002 или X2003,должно быть равным без шансов вернуть X2004.Единственный возможный возврат для «X55» должен быть X2004.
Интересующие меня выходные данные - это идентификаторы и столбец, который был выбран для этого прогона, хотя, вероятно, было бы проще вернуть что-то вроде этого:
ID, X2000, X2001, X2002, X2003, X2004
X11, 0, 0, 1, 0, 0
X33, 1, 0, 0, 0, 0
X55, 0, 0, 0, 0, 1
X77, 1, 0, 0, 0, 0