Среднее значение за период периодического сигнала с нулевой - PullRequest
1 голос
/ 04 апреля 2019

Я сделал измерение в университете.Сигнал имеет много шума, но является периодическим.

My raw signal

Я знаю точку начала сигнала (x = 36400) и какую частоту(1 Гц) и частота дискретизации (48000).Так что я могу «разрезать» отдельные периоды каждые 48000 баллов.Я могу создать массивы, похожие на этот [[period1],[period2],...,[period100]], где каждый период содержит измеренные значения.

Теперь я хочу усреднить каждый отдельный период, чтобы получить менее шумный сигнал.Я знаю, как это сделать с помощью for-loop, но есть ли быстрый способ использовать numpy для этого?

1 Ответ

1 голос
/ 04 апреля 2019

Сначала вы захотите нарезать массив, чтобы получить значимую часть

n_periods = 10  # or however man
beginning_idx = 1000  # or whever the good data begins

raw_signal = ...  # this is the data you read in
good_signal = raw_signal[beginning_idx:beginning_idx + n_periods * 48000]
periodic = good_signal.reshape(n_periods, 48000)
avg_signal = periodic.mean(axis=0)
...