Как понять / интерпретировать документацию периодограммы Ломба-Скарлга (package :: spectral) в R? - PullRequest
0 голосов
/ 21 января 2019

Я имею дело с наборами данных временных рядов с пробелами. Спектральный анализ должен быть сделан, чтобы захватить значительные частоты. Но поскольку FFT не реагирует на неравномерность данных, у меня есть две альтернативы:

  1. Отсутствует значение Импутация для заполнения пробелов, а затем для выполнения БПФ.

  2. Использование неоднородных алгоритмов БПФ. Периодограмма Lomb Scargle кажется хорошим вариантом.

Я проверил с различными методами вменения пропущенных значений с различными результатами. Теперь я также хочу проверить опцию Lomb Scargle.

В пакете R Spectral есть документация с кодом, которую я могу успешно запустить. Тем не менее, есть несколько сомнений, которые я хочу прояснить.

Все литературные / исследовательские работы, которые я нашел по этой теме, включают в себя сложные математические уравнения, которые немного сложны для меня.

Я был бы признателен, если бы кто-то мог указать мне на любой источник, где я мог бы получить функциональное понимание периодограммы Ломбарда с примерами.

Вот код из документации:

# create two sin-functions
x_orig <- seq(0,1,by=1e-2)
y_orig <- sin(10*2*pi*x_orig) + 0.3*sin(2*2*pi*x_orig)
plot(x_orig, y_orig, type = "l")

# make a 10% gap
i <- round(length(x_orig)*0.2) : round(length(x_orig)*0.3)
x <- x_orig
y <- y_orig
x[i] <- NA
y[i] <- NA

# calculating the lomb periodogram
l <- spec.lomb(x = x, y = y)

# select a frequency range
m <- rbind(c(9,11))

# select and reconstruct the most significant component
l2 = filter.lomb(l, x_orig, filt=m)

# plot everything
par(mfrow=c(2,1),mar = c(4,4,2,4))
plot(x,y,"l", main = "Gapped signal")
lines(l2$x, l2$y,lty=2)
legend("bottomleft",c("gapped","10Hz component"),lty=c(1,2))
plot(l,main = "Spectrum")

Во-первых, что я должен учитывать при теоретическом выборе диапазона частот?

m <- rbind(c(9,11))

Во-вторых, что делает строка кода ниже?

par(mfrow=c(2,1),mar = c(4,4,2,4))

Наконец, правильно ли я сказал, что, если я применю алгоритм Ломба-Скаргла к равномерно дискретизированным данным временных рядов без пропусков, результат будет точно таким же, как быстрое преобразование Фурье?

Очень жаль, если вопросы простые.

...