Редактирование этого поста для упрощения в соответствии с @agstudyПрограммы просто моделирование в R
Я пытаюсь разработать модель, которая имитирует полимер, используя случайное равномерное распределение.
Модель имеет 2 состояния
состояние 1 (вероятность состояния 1, если в состоянии 2 является 0,003): вероятность роста, А = 0,01 вероятность термоусадочной, В = 0,0025
Государственный 2 (вероятность состояния 2 в состояние, если 1 0,0003): вероятность роста, А = 0,01 вероятность термоусадочной, Е = .05
Моделирование начинается в штате 1
Пока в состоянии 1 выберите случайные числа из data.frame1, если # < .0025 вход -1 в data.frame2, если # < .01 вход +1 в data.frame2, если ни вход 0 в data.frame2. продолжайте до достижения # < .0003 (вероятность входа в состояние 1)
Если выбран образец # < .0003, введите -1 в data.frame2 и переключитесь в состояние 2. продолжите выборку случайных чисел, а в состоянии 2, если # < .003 введите +1 в data.frame2 и переключитесь в состояние 1 и действуйте, как указано выше. Если в состоянии 2: #> = .003, а если # < .05 введите -1 в data.frame2, иначе введите 0 в data.frame2
Надеюсь, что это очистит вещи вверх, а есть шанс это может не ... извините, если это так.
вот пример генерируется в первенствуете как небольшой набор должен выглядеть
1-й столбец будет из data.frame1 и столбца ввода будет data.frame2, я включен состоянием и длиной колонки для пояснительных целей ,
rnumbers state input length
0 1 0 0 # initialized state
0.009413895 1 1 1
0.052959306 1 1 2
0.002453354 1 -1 1
0.000290324 2 -1 0
0.093312954 2 0 0
0.077210941 2 0 0
0.04924944 2 -1 -1
0.010590107 2 -1 -2
0.03308292 2 -1 -3
0.037239807 2 -1 -4
0.007889393 2 -1 -5
0.026476751 2 -1 -6
0.000454509 1 1 -5
0.009820683 1 1 -4
0.019836999 1 1 -3
0.009380381 1 1 -2
0.083149383 1 1 -1
0.022212547 1 1 0
0.051917035 1 1 1
0.05032031 1 1 2
0.03956718 1 1 3
0.032664445 1 1 4
0.004352291 1 1 5
0.08902418 1 1 6
0.095643962 1 1 7
Что делать, если 'rnum [я] == C'? –
good point, treat rnum [i]> C как rnum [i]> = C – user2813055
Вы заметили, что, поскольку 'C