Генерация гауссовского временного ряда в питоне - PullRequest
0 голосов
/ 15 января 2019

У меня проблема с домашней работой, чтобы написать программу анализа автокорреляции. После долгих усилий по прочесыванию интернета у меня получилась достойная программа. Следующая часть вопроса состоит в том, чтобы проверить программу, анализируя двумерный гауссовский временной ряд. Я знаю, что это математически / статистически, но я не совсем уверен, как это сгенерировать в python. Моя программа написана так, что она берет файл .txt и выполняет анализ оттуда. Но как я могу сгенерировать гауссовский временной ряд из 2 переменных в python? Я пытался использовать следующее:

import numpy as np
mean = [0, 0]
cov = [[1, 0], [0, 100]]
x, y = np.random.multivariate_normal(mean, cov, 5000) #5000 points
print x,y #just to see if it works

но возвращает ошибку «слишком много значений для распаковки». Когда я снимаю до 5000, я получаю 2 значения, как и ожидалось. Я думаю, что я неправильно понимаю входные переменные функции mulitvariate_normal, но сейчас я просто запутался. Как бы я переписал этот код для генерации временного ряда, который затем смогу проанализировать?

1 Ответ

0 голосов
/ 15 января 2019

Все хорошо, пока часть задания. Вы присваиваете массив (5000,2) двум значениям вдоль первой оси, это не сработает.

Попробуйте переместить массив перед присваиванием. x,y = np.random.multivariate_normal(mean, cov, 5000).T

...