Привет, у меня есть следующие данные, записанные с частотой 15 Гц, и я хочу передискретизировать их с помощью линейной интерполяции до 25 Гц. Каков наилучший способ добиться этого? Вот первая секунда моего набора данных:
RecordFile YTSIMTMD RBDDLO_0 RBDDGS_0 IDLWMWC1 time timeNF
864 2C01MUC.txx 85535.10 -0.31 -0.348873 1 0.00000 0
865 2C01MUC.txx 85535.17 -0.31 -0.348873 1 0.06667 6667
866 2C01MUC.txx 85535.23 -0.31 -0.348873 0 0.13334 13334
867 2C01MUC.txx 85535.30 -0.31 -0.348832 0 0.20000 20000
868 2C01MUC.txx 85535.37 -0.31 -0.348832 0 0.26667 26667
869 2C01MUC.txx 85535.43 -0.31 -0.348832 0 0.33334 33334
870 2C01MUC.txx 85535.50 -0.31 -0.348832 1 0.40000 40000
871 2C01MUC.txx 85535.57 -0.31 -0.348796 1 0.46667 46667
872 2C01MUC.txx 85535.63 -0.31 -0.348796 1 0.53334 53334
873 2C01MUC.txx 85535.70 -0.31 -0.348796 1 0.60000 60000
874 2C01MUC.txx 85535.77 -0.31 -0.348796 0 0.66667 66667
875 2C01MUC.txx 85535.83 -0.31 -0.348767 0 0.73334 73334
876 2C01MUC.txx 85535.90 -0.31 -0.348767 0 0.80000 80000
877 2C01MUC.txx 85535.97 -0.31 -0.348767 0 0.86667 86667
878 2C01MUC.txx 85536.03 -0.31 -0.348767 1 0.93334 93334
879 2C01MUC.txx 85536.10 -0.31 -0.348735 1 1.00000 100000
После этого я хочу сопоставить его с этим набором данных, записанным с частотой 25 Гц.
vpName vpID origIndex areaNum areaName startMS endMS durationMS startF endF durationF accumIndex
1 2C01 1 1 2 ATT 0 560 560 0 14 14 1
2 2C01 1 1 2 ATT 0 560 560 0 14 14 1
3 2C01 1 1 2 ATT 0 560 560 0 14 14 1
4 2C01 1 1 2 ATT 0 560 560 0 14 14 1
5 2C01 1 1 2 ATT 0 560 560 0 14 14 1
6 2C01 1 1 2 ATT 0 560 560 0 14 14 1
Я обнаружил, что approx
кажется линейной интерполяцией для линейной интерполяции в R, однако я не уверен, какие параметры использовать для повышения частоты дискретизации моих данных с 15 до 25 Гц?
Кажется, есть явные пакеты для обработки временных рядов в R, такие как zoo и xts, но я не уверен, нужны ли они мне. Оба набора данных запускаются одновременно, поэтому после повышения дискретизации я мог просто сопоставить их по номеру строки.
Спасибо за вашу помощь!
approx
довольно подробно описывает, как указатьx
-значения, при которых вы хотите интерполяции! Если хотите, используйтеlm
, чтобы создать уравнение для линейной подгонки, и передайте ему вектор данных. - person Carl Witthoft   schedule 09.08.2014