2015-01-27 3 views
1

Noobie вопрос здесь: Каков наилучший способ передать 1-й массив через уравнение несколько раз, чтобы создать серию результатов?python monte carlo против dataframe

Если у меня есть следующий код:

montecarlo=randn(1000,1) 
tommorows_value=todays_5_day_MA*stdev*montecarlo 

Как пройти Монте-Карло выход в этом уравнении, чтобы генерировать 1000 возможных результатов завтрашней стоимости? Я бы разработал цикл for? tomorrows_value и todays_5_day_MA - это тип pd.Series.

Благодаря

ответ

0

Если я правильно понимаю, это выглядит, как вы пытаетесь сделать 1000 образцов из нормального распределения со средним todays_5_day, и стандартное отклонение stddev.

То, что у вас есть, почти правильно, но вы хотите добавить среднее, а не умножать на него.

import numpy as np 
tomorrows_value = stddev * np.random.randn(1000,1) + todays_5_day 

Смотрите раздел в documentationNotes.

+0

Предположим, что у меня есть следующее уравнение: x = a + b * c a и b - одиночные значения. Я хочу запустить monte carlo np.random.randn (1000,1) как значение c, чтобы определить все возможные результаты для x. Моя конечная цель в том, чтобы построить временные ряды данных как линейную диаграмму, а затем все мои возможные значения «х». Значения x являются завтрашним прогнозом и, следовательно, будут 1000 уникальных значений за 1 день. – molivizzy

+0

Я создал функцию ниже: четкости Montecarlo (а, б): randnumgen = np.random.randn (1000,1) для г в randnumgen: фактор = а * I для п в фактор: ВУ = (b + n) return rt , но результат не тот, который мне нужен, поскольку он возвращает одно значение, а не 1000 возможностей. Кроме того, как я могу индексировать 1000 значений по сравнению с самым последним днем ​​только для того, чтобы я мог строить график с таймсерами? – molivizzy

Смежные вопросы