Nội suy Fourier / lượng giác


9

Lý lịch

Trong một bài báo từ Epstein (1991): Về việc đạt được các giá trị khí hậu hàng ngày từ các phương tiện hàng tháng , công thức và thuật toán để tính toán nội suy Fourier cho các giá trị định kỳ và cách đều nhau được đưa ra.

Trong bài báo, mục tiêu là để có được các giá trị hàng ngày từ phương tiện hàng tháng bằng cách nội suy.

Nói tóm lại, người ta cho rằng các giá trị hàng ngày không xác định có thể được biểu diễn bằng tổng các thành phần hài: Trong bài báo (thời gian) được thể hiện bằng tháng. t

y(t)=a0+j[ajcos(2πjt/12)+bjsin(2πjt/12)]
t

Sau một số sự giám sát, có thể thấy rằng các thuật ngữ có thể được tính bằng: started Trong đó biểu thị phương tiện hàng tháng và T tháng. YTT

một0= =ΣTYT/12mộtj= =[(πj/12)/tội(πj/12)]×ΣT[YTcos(2πjT/12)/6]       j= =1,Giáo dục,5bj= =[(πj/12)/tội(πj/12)]×ΣT[YTtội(2πjT/12)/6]       j= =1,Giáo dục,5một6= =[(πj/12)/tội(πj/12)]×ΣT[YTcos(πT)/12]b6= =0
YTT

Harzallah (1995) tóm tắt aproach này như sau: "Phép nội suy được thực hiện bằng cách thêm các số 0 vào các hệ số phổ của dữ liệu và bằng cách thực hiện một phép biến đổi Fourier ngược với các hệ số mở rộng kết quả. Phương pháp này tương đương với việc áp dụng bộ lọc hình chữ nhật cho hệ số Fourier. . "


Câu hỏi

Mục tiêu của tôi là sử dụng phương pháp trên để nội suy các phương tiện hàng tuần để có được dữ liệu hàng ngày (xem câu hỏi trước của tôi ). Tóm lại, tôi có 835 phương tiện đếm dữ liệu hàng tuần (xem tập dữ liệu mẫu ở cuối câu hỏi). Có một vài điều mà tôi không hiểu trước khi tôi có thể áp dụng cách tiếp cận được nêu ở trên:

  1. Làm thế nào các công thức phải được thay đổi cho tình huống của tôi (hàng tuần thay vì giá trị hàng tháng)?
  2. Làm thế nào thời gian có thể được thể hiện? Tôi giả sử (hoặc với điểm dữ liệu nói chung), điều đó có đúng không?t / 835 t / n ntt/835t/nn
  3. Tại sao tác giả tính 7 thuật ngữ (tức là )? Có bao nhiêu điều khoản tôi sẽ phải xem xét?0j6
  4. Tôi hiểu rằng câu hỏi có thể được giải quyết bằng cách sử dụng phương pháp hồi quy và sử dụng các dự đoán cho phép nội suy (nhờ Nick). Tuy nhiên, một số điều không rõ ràng đối với tôi: Có bao nhiêu thuật ngữ điều hòa nên được đưa vào hồi quy? Và tôi nên dùng thời gian nào? Làm thế nào hồi quy có thể được thực hiện để đảm bảo rằng các phương tiện hàng tuần được bảo tồn (vì tôi không muốn một điều hòa chính xác phù hợp với dữ liệu)?

Sử dụng phương pháp hồi quy (cũng được giải thích trong bài viết này ), tôi đã xoay sở để có được sự hài hòa chính xác với dữ liệu ( trong ví dụ của tôi sẽ chạy qua , vì vậy tôi đã trang bị cho thuật ngữ 417). Cách tiếp cận này có thể được sửa đổi - nếu có thể - để đạt được sự bảo tồn của các phương tiện hàng tuần? Có thể bằng cách áp dụng các yếu tố điều chỉnh cho mỗi thuật ngữ hồi quy?1 , ... , 417j1,Giáo dục,417  

Cốt truyện của sự phù hợp chính xác là:

Phù hợp chính xác

BIÊN TẬP

Sử dụng gói tín hiệuinterp1chức năng, đây là những gì tôi đã quản lý để sử dụng tập dữ liệu mẫu từ bên dưới (cảm ơn @noumenal). Tôi sử dụng q=7như chúng tôi có dữ liệu hàng tuần:

# Set up the time scale

daily.ts <- seq(from=as.Date("1995-01-01"), to=as.Date("2010-12-31"), by="day")

# Set up data frame 

ts.frame <- data.frame(daily.ts=daily.ts, wdayno=as.POSIXlt(daily.ts)$wday,
                       yearday = 1:5844,
                       no.influ.cases=NA)

# Add the data from the example dataset called "my.dat"

ts.frame$no.influ.cases[ts.frame$wdayno==3] <- my.dat$case

# Interpolation

case.interp1 <- interp1(x=ts.frame$yearday[!is.na(ts.frame$no.influ.case)],y=(ts.frame$no.influ.cases[!is.na(ts.frame$no.influ.case)]),xi=ts.frame$yearday, method = c("cubic"))

# Plot subset for better interpretation
par(bg="white", cex=1.2, las=1)
plot((ts.frame$no.influ.cases)~ts.frame$yearday, pch=20,
     col=grey(0.4),
     cex=1, las=1,xlim=c(0,400), xlab="Day", ylab="Influenza cases")
lines(case.interp1, col="steelblue", lwd=1)

Cubicinterpo

Có hai vấn đề ở đây:

  1. Đường cong dường như phù hợp với "quá tốt": nó đi qua mọi điểm
  2. Các phương tiện hàng tuần không được bảo tồn

Ví dụ dữ liệu

structure(list(date = structure(c(9134, 9141, 9148, 9155, 9162, 
9169, 9176, 9183, 9190, 9197, 9204, 9211, 9218, 9225, 9232, 9239, 
9246, 9253, 9260, 9267, 9274, 9281, 9288, 9295, 9302, 9309, 9316, 
9323, 9330, 9337, 9344, 9351, 9358, 9365, 9372, 9379, 9386, 9393, 
9400, 9407, 9414, 9421, 9428, 9435, 9442, 9449, 9456, 9463, 9470, 
9477, 9484, 9491, 9498, 9505, 9512, 9519, 9526, 9533, 9540, 9547, 
9554, 9561, 9568, 9575, 9582, 9589, 9596, 9603, 9610, 9617, 9624, 
9631, 9638, 9645, 9652, 9659, 9666, 9673, 9680, 9687, 9694, 9701, 
9708, 9715, 9722, 9729, 9736, 9743, 9750, 9757, 9764, 9771, 9778, 
9785, 9792, 9799, 9806, 9813, 9820, 9827, 9834, 9841, 9848, 9855, 
9862, 9869, 9876, 9883, 9890, 9897, 9904, 9911, 9918, 9925, 9932, 
9939, 9946, 9953, 9960, 9967, 9974, 9981, 9988, 9995, 10002, 
10009, 10016, 10023, 10030, 10037, 10044, 10051, 10058, 10065, 
10072, 10079, 10086, 10093, 10100, 10107, 10114, 10121, 10128, 
10135, 10142, 10149, 10156, 10163, 10170, 10177, 10184, 10191, 
10198, 10205, 10212, 10219, 10226, 10233, 10240, 10247, 10254, 
10261, 10268, 10275, 10282, 10289, 10296, 10303, 10310, 10317, 
10324, 10331, 10338, 10345, 10352, 10359, 10366, 10373, 10380, 
10387, 10394, 10401, 10408, 10415, 10422, 10429, 10436, 10443, 
10450, 10457, 10464, 10471, 10478, 10485, 10492, 10499, 10506, 
10513, 10520, 10527, 10534, 10541, 10548, 10555, 10562, 10569, 
10576, 10583, 10590, 10597, 10604, 10611, 10618, 10625, 10632, 
10639, 10646, 10653, 10660, 10667, 10674, 10681, 10688, 10695, 
10702, 10709, 10716, 10723, 10730, 10737, 10744, 10751, 10758, 
10765, 10772, 10779, 10786, 10793, 10800, 10807, 10814, 10821, 
10828, 10835, 10842, 10849, 10856, 10863, 10870, 10877, 10884, 
10891, 10898, 10905, 10912, 10919, 10926, 10933, 10940, 10947, 
10954, 10961, 10968, 10975, 10982, 10989, 10996, 11003, 11010, 
11017, 11024, 11031, 11038, 11045, 11052, 11059, 11066, 11073, 
11080, 11087, 11094, 11101, 11108, 11115, 11122, 11129, 11136, 
11143, 11150, 11157, 11164, 11171, 11178, 11185, 11192, 11199, 
11206, 11213, 11220, 11227, 11234, 11241, 11248, 11255, 11262, 
11269, 11276, 11283, 11290, 11297, 11304, 11311, 11318, 11325, 
11332, 11339, 11346, 11353, 11360, 11367, 11374, 11381, 11388, 
11395, 11402, 11409, 11416, 11423, 11430, 11437, 11444, 11451, 
11458, 11465, 11472, 11479, 11486, 11493, 11500, 11507, 11514, 
11521, 11528, 11535, 11542, 11549, 11556, 11563, 11570, 11577, 
11584, 11591, 11598, 11605, 11612, 11619, 11626, 11633, 11640, 
11647, 11654, 11661, 11668, 11675, 11682, 11689, 11696, 11703, 
11710, 11717, 11724, 11731, 11738, 11745, 11752, 11759, 11766, 
11773, 11780, 11787, 11794, 11801, 11808, 11815, 11822, 11829, 
11836, 11843, 11850, 11857, 11864, 11871, 11878, 11885, 11892, 
11899, 11906, 11913, 11920, 11927, 11934, 11941, 11948, 11955, 
11962, 11969, 11976, 11983, 11990, 11997, 12004, 12011, 12018, 
12025, 12032, 12039, 12046, 12053, 12060, 12067, 12074, 12081, 
12088, 12095, 12102, 12109, 12116, 12123, 12130, 12137, 12144, 
12151, 12158, 12165, 12172, 12179, 12186, 12193, 12200, 12207, 
12214, 12221, 12228, 12235, 12242, 12249, 12256, 12263, 12270, 
12277, 12284, 12291, 12298, 12305, 12312, 12319, 12326, 12333, 
12340, 12347, 12354, 12361, 12368, 12375, 12382, 12389, 12396, 
12403, 12410, 12417, 12424, 12431, 12438, 12445, 12452, 12459, 
12466, 12473, 12480, 12487, 12494, 12501, 12508, 12515, 12522, 
12529, 12536, 12543, 12550, 12557, 12564, 12571, 12578, 12585, 
12592, 12599, 12606, 12613, 12620, 12627, 12634, 12641, 12648, 
12655, 12662, 12669, 12676, 12683, 12690, 12697, 12704, 12711, 
12718, 12725, 12732, 12739, 12746, 12753, 12760, 12767, 12774, 
12781, 12788, 12795, 12802, 12809, 12816, 12823, 12830, 12837, 
12844, 12851, 12858, 12865, 12872, 12879, 12886, 12893, 12900, 
12907, 12914, 12921, 12928, 12935, 12942, 12949, 12956, 12963, 
12970, 12977, 12984, 12991, 12998, 13005, 13012, 13019, 13026, 
13033, 13040, 13047, 13054, 13061, 13068, 13075, 13082, 13089, 
13096, 13103, 13110, 13117, 13124, 13131, 13138, 13145, 13152, 
13159, 13166, 13173, 13180, 13187, 13194, 13201, 13208, 13215, 
13222, 13229, 13236, 13243, 13250, 13257, 13264, 13271, 13278, 
13285, 13292, 13299, 13306, 13313, 13320, 13327, 13334, 13341, 
13348, 13355, 13362, 13369, 13376, 13383, 13390, 13397, 13404, 
13411, 13418, 13425, 13432, 13439, 13446, 13453, 13460, 13467, 
13474, 13481, 13488, 13495, 13502, 13509, 13516, 13523, 13530, 
13537, 13544, 13551, 13558, 13565, 13572, 13579, 13586, 13593, 
13600, 13607, 13614, 13621, 13628, 13635, 13642, 13649, 13656, 
13663, 13670, 13677, 13684, 13691, 13698, 13705, 13712, 13719, 
13726, 13733, 13740, 13747, 13754, 13761, 13768, 13775, 13782, 
13789, 13796, 13803, 13810, 13817, 13824, 13831, 13838, 13845, 
13852, 13859, 13866, 13873, 13880, 13887, 13894, 13901, 13908, 
13915, 13922, 13929, 13936, 13943, 13950, 13957, 13964, 13971, 
13978, 13985, 13992, 13999, 14006, 14013, 14020, 14027, 14034, 
14041, 14048, 14055, 14062, 14069, 14076, 14083, 14090, 14097, 
14104, 14111, 14118, 14125, 14132, 14139, 14146, 14153, 14160, 
14167, 14174, 14181, 14188, 14195, 14202, 14209, 14216, 14223, 
14230, 14237, 14244, 14251, 14258, 14265, 14272, 14279, 14286, 
14293, 14300, 14307, 14314, 14321, 14328, 14335, 14342, 14349, 
14356, 14363, 14370, 14377, 14384, 14391, 14398, 14405, 14412, 
14419, 14426, 14433, 14440, 14447, 14454, 14461, 14468, 14475, 
14482, 14489, 14496, 14503, 14510, 14517, 14524, 14531, 14538, 
14545, 14552, 14559, 14566, 14573, 14580, 14587, 14594, 14601, 
14608, 14615, 14622, 14629, 14636, 14643, 14650, 14657, 14664, 
14671, 14678, 14685, 14692, 14699, 14706, 14713, 14720, 14727, 
14734, 14741, 14748, 14755, 14762, 14769, 14776, 14783, 14790, 
14797, 14804, 14811, 14818, 14825, 14832, 14839, 14846, 14853, 
14860, 14867, 14874, 14881, 14888, 14895, 14902, 14909, 14916, 
14923, 14930, 14937, 14944, 14951, 14958, 14965, 14972), class = "Date"), 
    cases = c(168L, 199L, 214L, 230L, 267L, 373L, 387L, 443L, 
    579L, 821L, 1229L, 1014L, 831L, 648L, 257L, 203L, 137L, 78L, 
    82L, 69L, 45L, 51L, 45L, 63L, 55L, 54L, 52L, 27L, 24L, 12L, 
    10L, 22L, 42L, 32L, 52L, 82L, 95L, 91L, 104L, 143L, 114L, 
    100L, 83L, 113L, 145L, 175L, 222L, 258L, 384L, 755L, 976L, 
    879L, 846L, 1004L, 801L, 799L, 680L, 530L, 410L, 302L, 288L, 
    234L, 269L, 245L, 240L, 176L, 188L, 128L, 96L, 59L, 63L, 
    44L, 52L, 39L, 50L, 36L, 40L, 48L, 32L, 39L, 28L, 29L, 16L, 
    20L, 25L, 25L, 48L, 57L, 76L, 117L, 107L, 91L, 90L, 83L, 
    76L, 86L, 104L, 101L, 116L, 120L, 185L, 290L, 537L, 485L, 
    561L, 1142L, 1213L, 1235L, 1085L, 1052L, 987L, 918L, 746L, 
    620L, 396L, 280L, 214L, 148L, 148L, 94L, 107L, 69L, 55L, 
    69L, 47L, 43L, 49L, 30L, 42L, 51L, 41L, 39L, 40L, 38L, 22L, 
    37L, 26L, 40L, 56L, 54L, 74L, 99L, 114L, 114L, 120L, 114L, 
    123L, 131L, 170L, 147L, 163L, 163L, 160L, 158L, 163L, 124L, 
    115L, 176L, 171L, 214L, 320L, 507L, 902L, 1190L, 1272L, 1282L, 
    1146L, 896L, 597L, 434L, 216L, 141L, 101L, 86L, 65L, 55L, 
    35L, 49L, 29L, 55L, 53L, 57L, 34L, 43L, 42L, 13L, 17L, 20L, 
    27L, 36L, 47L, 64L, 77L, 82L, 82L, 95L, 107L, 96L, 106L, 
    93L, 114L, 102L, 116L, 128L, 123L, 212L, 203L, 165L, 267L, 
    550L, 761L, 998L, 1308L, 1613L, 1704L, 1669L, 1296L, 975L, 
    600L, 337L, 259L, 145L, 91L, 70L, 79L, 63L, 58L, 51L, 53L, 
    39L, 49L, 33L, 47L, 56L, 32L, 43L, 47L, 19L, 32L, 18L, 34L, 
    39L, 63L, 57L, 55L, 69L, 76L, 103L, 99L, 108L, 131L, 113L, 
    106L, 122L, 138L, 136L, 175L, 207L, 324L, 499L, 985L, 1674L, 
    1753L, 1419L, 1105L, 821L, 466L, 274L, 180L, 143L, 82L, 101L, 
    72L, 55L, 71L, 50L, 33L, 26L, 25L, 27L, 21L, 24L, 24L, 20L, 
    18L, 18L, 25L, 23L, 13L, 10L, 16L, 9L, 12L, 16L, 25L, 31L, 
    36L, 40L, 36L, 47L, 32L, 46L, 75L, 63L, 49L, 90L, 83L, 101L, 
    78L, 79L, 98L, 131L, 83L, 122L, 179L, 334L, 544L, 656L, 718L, 
    570L, 323L, 220L, 194L, 125L, 95L, 77L, 46L, 42L, 29L, 35L, 
    21L, 29L, 16L, 14L, 19L, 15L, 19L, 18L, 21L, 10L, 14L, 7L, 
    7L, 5L, 9L, 14L, 11L, 18L, 22L, 39L, 36L, 46L, 44L, 37L, 
    30L, 39L, 37L, 45L, 71L, 59L, 57L, 80L, 68L, 88L, 72L, 74L, 
    208L, 357L, 621L, 839L, 964L, 835L, 735L, 651L, 400L, 292L, 
    198L, 85L, 64L, 41L, 40L, 23L, 18L, 14L, 22L, 9L, 19L, 8L, 
    14L, 12L, 15L, 14L, 4L, 6L, 7L, 7L, 8L, 13L, 10L, 19L, 17L, 
    20L, 22L, 40L, 37L, 45L, 34L, 26L, 35L, 67L, 49L, 77L, 82L, 
    80L, 104L, 88L, 49L, 73L, 113L, 142L, 152L, 206L, 293L, 513L, 
    657L, 919L, 930L, 793L, 603L, 323L, 202L, 112L, 55L, 31L, 
    27L, 15L, 15L, 6L, 13L, 21L, 10L, 11L, 9L, 8L, 11L, 7L, 5L, 
    1L, 4L, 7L, 2L, 6L, 12L, 14L, 21L, 29L, 32L, 26L, 22L, 44L, 
    39L, 47L, 44L, 93L, 145L, 289L, 456L, 685L, 548L, 687L, 773L, 
    575L, 355L, 248L, 179L, 129L, 122L, 103L, 72L, 72L, 36L, 
    26L, 31L, 12L, 14L, 14L, 14L, 7L, 8L, 2L, 7L, 8L, 9L, 26L, 
    10L, 13L, 13L, 5L, 5L, 3L, 6L, 1L, 10L, 6L, 7L, 17L, 12L, 
    21L, 32L, 29L, 18L, 22L, 24L, 38L, 52L, 53L, 73L, 49L, 52L, 
    70L, 77L, 95L, 135L, 163L, 303L, 473L, 823L, 1126L, 1052L, 
    794L, 459L, 314L, 252L, 111L, 55L, 35L, 14L, 30L, 21L, 16L, 
    9L, 11L, 6L, 6L, 8L, 9L, 9L, 10L, 15L, 15L, 11L, 6L, 3L, 
    8L, 4L, 7L, 7L, 13L, 10L, 23L, 24L, 36L, 25L, 34L, 37L, 46L, 
    39L, 37L, 55L, 65L, 54L, 60L, 82L, 55L, 53L, 61L, 52L, 75L, 
    92L, 121L, 170L, 199L, 231L, 259L, 331L, 357L, 262L, 154L, 
    77L, 34L, 41L, 21L, 17L, 16L, 7L, 15L, 11L, 7L, 5L, 6L, 13L, 
    7L, 6L, 8L, 7L, 1L, 11L, 9L, 3L, 9L, 9L, 8L, 15L, 19L, 16L, 
    10L, 12L, 26L, 35L, 35L, 41L, 34L, 30L, 36L, 43L, 23L, 55L, 
    107L, 141L, 217L, 381L, 736L, 782L, 663L, 398L, 182L, 137L, 
    79L, 28L, 26L, 16L, 14L, 8L, 4L, 4L, 6L, 6L, 11L, 4L, 5L, 
    7L, 7L, 6L, 8L, 2L, 3L, 3L, 1L, 1L, 3L, 3L, 2L, 8L, 8L, 11L, 
    10L, 11L, 8L, 24L, 25L, 25L, 33L, 36L, 51L, 61L, 74L, 92L, 
    89L, 123L, 402L, 602L, 524L, 494L, 406L, 344L, 329L, 225L, 
    136L, 136L, 84L, 55L, 55L, 42L, 19L, 28L, 8L, 7L, 2L, 7L, 
    6L, 4L, 3L, 5L, 3L, 3L, 0L, 1L, 2L, 3L, 2L, 1L, 2L, 2L, 9L, 
    4L, 9L, 10L, 18L, 15L, 13L, 12L, 10L, 19L, 15L, 22L, 23L, 
    34L, 43L, 53L, 47L, 57L, 328L, 552L, 787L, 736L, 578L, 374L, 
    228L, 161L, 121L, 96L, 58L, 50L, 37L, 14L, 9L, 6L, 15L, 12L, 
    9L, 1L, 6L, 4L, 7L, 7L, 3L, 6L, 9L, 15L, 22L, 28L, 34L, 62L, 
    54L, 75L, 65L, 58L, 57L, 60L, 37L, 47L, 60L, 89L, 90L, 193L, 
    364L, 553L, 543L, 676L, 550L, 403L, 252L, 140L, 125L, 99L, 
    63L, 63L, 76L, 85L, 68L, 67L, 38L, 25L, 24L, 11L, 9L, 9L, 
    4L, 8L, 4L, 6L, 5L, 2L, 6L, 4L, 4L, 1L, 5L, 4L, 1L, 2L, 2L, 
    2L, 2L, 3L, 4L, 4L, 7L, 5L, 2L, 10L, 11L, 17L, 11L, 16L, 
    15L, 11L, 12L, 21L, 20L, 25L, 46L, 51L, 90L, 123L)), .Names = c("date", 
"cases"), row.names = c(NA, -835L), class = "data.frame")

2
Văn học cũ thường thích thú với các công thức phức tạp của rococo cho loại điều này. Trong thực tế, tôi sẽ nghiêng về phía sau để nghĩ về điều này như là một vấn đề hồi quy để các giá trị nội suy chỉ là các giá trị dự đoán từ hồi quy. Xem ví dụ: stats.stackexchange.com/questions/60500/ Google Nguyên tắc chính là chu kỳ chính lặp lại một lần mỗi năm.
Nick Cox

1
Trong thực tế, bạn muốn có một sự phù hợp rất gần với dữ liệu vì bạn muốn làm mịn cục bộ. Điều đó có thể cần một vài cặp Fourier, nhưng lợi nhuận giảm dần được thiết lập rất nhanh, do đó, mỗi cặp điều khoản mới sẽ sớm bổ sung rất ít. Bạn chỉ cần mút nó và xem. Vẽ mọi thứ làm cho nó rõ ràng hơn.
Nick Cox

1
Tôi đã thử nhanh chóng với dữ liệu của bạn (sử dụng Stata, không phải R). Tóm lại, mặc dù có tính thời vụ rõ rệt trong dữ liệu của bạn nhưng nó không đủ thường xuyên để phương pháp này hoạt động tốt: ví dụ, không chỉ thời gian của các đỉnh thay đổi rất nhiều, mà cả số trường hợp ở đỉnh; trong một số năm nhưng không phải tất cả đều có một đỉnh thứ cấp vào cuối năm dương lịch. Hơn nữa, tính thời vụ được kết hợp với xu hướng dài hạn rõ rệt. Tôi đoán là để có được các trường hợp hàng ngày, bạn nên sử dụng một số phép nội suy nghiêm ngặt cục bộ hoặc làm mịn chuỗi hàng tuần được mở rộng gấp bảy lần.
Nick Cox

1
Trong kỹ thuật hệ thống điều khiển, tiêu chí Nyquist được sử dụng làm sàn cho tỷ lệ lấy mẫu. Nó cho biết mẫu ở tần số cao hơn hai lần trong dữ liệu của bạn. Trong thực tế, thông thường hơn là lấy mẫu trên 5x tần số cao nhất mà bạn hy vọng sẽ giải quyết. Nếu đầu vào của bạn là dữ liệu hàng tuần, thì Nyquist cho thấy tần suất có thể phân giải cao nhất là theo thứ tự 2 tuần. Có thể tốt hơn nếu bạn có số liệu thống kê hàng tuần khác để thông báo mẫu và giá trị trung bình. vi.wikipedia.org/wiki/Nyquist-Shannon_sampling_theorem
EngrStudent

+1 câu hỏi tuyệt vời! Bạn có biết cách nào để phát hiện tín hiệu trong nhiễu (tốt nhất là trong R), miễn là bạn có một số phân phối, trong đó nhiễu là Gaussian và tín hiệu là Gaussian cộng với một phần khác? Tôi đã xem xét nhiều gói và chức năng (signal, fft (), v.v.) và thậm chí đã chơi với dữ liệu, cố gắng áp dụng chuyển đổi Fourier và thậm chí các biện pháp entropy, nhưng không có kết quả. Tôi đã cố gắng trả lời một câu hỏi (không phải của tôi) và tìm hiểu một cái gì đó mới trên đường đi, vì tôi thấy chủ đề này khá thú vị.
Alexanderr Blekh

Câu trả lời:


4

Tôi không phải là chuyên gia về biến đổi Fourier, nhưng ...

Tổng phạm vi mẫu của Epstein là 24 tháng với tỷ lệ mẫu hàng tháng: 1/12 năm. Phạm vi mẫu của bạn là 835 tuần. Nếu mục tiêu của bạn là ước tính trung bình trong một năm với dữ liệu từ ~ 16 năm dựa trên dữ liệu hàng ngày, bạn cần tỷ lệ mẫu là 1/365 năm. Vì vậy, thay thế 52 cho 12, nhưng trước tiên hãy chuẩn hóa các đơn vị và mở rộng 835 tuần của bạn lên 835 * 7 = 5845 ngày. Tuy nhiên, nếu bạn chỉ có điểm dữ liệu hàng tuần, tôi đề xuất tỷ lệ mẫu là 52 với độ sâu bit là 16 hoặc 17 để phân tích đỉnh, thay vào đó là 32 hoặc 33 để so sánh chẵn / lẻ. Vì vậy, các tùy chọn đầu vào mặc định bao gồm: 1) để sử dụng các phương tiện hàng tuần (hoặc độ lệch tuyệt đối trung vị, MAD hoặc một cái gì đó đến mức đó) hoặc 2) để sử dụng các giá trị hàng ngày, cung cấp độ phân giải cao hơn.

Liebman et al. đã chọn điểm giới hạn jmax = 2. Do đó, Hình 3. chứa ít hạt hơn và do đó đối xứng hơn ở đỉnh sin so với Hình 2. (Một phần duy nhất ở tần số cơ bản sẽ dẫn đến sóng hình sin thuần túy. ) Nếu Epstein đã chọn độ phân giải cao hơn (ví dụ jmax = 12), phép biến đổi có lẽ chỉ mang lại dao động nhỏ với các thành phần bổ sung, hoặc có lẽ anh ta thiếu sức mạnh tính toán.

Thông qua kiểm tra trực quan dữ liệu của bạn, bạn dường như có 16-17 đỉnh. Tôi sẽ đề nghị bạn đặt jmax hoặc "độ sâu bit" thành 6, 11, 16 hoặc 17 (xem hình) và so sánh các đầu ra. Các đỉnh càng cao, chúng càng đóng góp vào dạng sóng phức tạp ban đầu. Vì vậy, giả sử độ phân giải 17 dải hoặc độ sâu bit, phần thứ 17 đóng góp tối thiểu vào mẫu dạng sóng ban đầu so với đỉnh thứ 6. Tuy nhiên, với độ phân giải 34 băng tần, bạn sẽ phát hiện ra sự khác biệt giữa các đỉnh chẵn và lẻ theo đề xuất của các thung lũng khá không đổi. Độ sâu bit phụ thuộc vào câu hỏi nghiên cứu của bạn, cho dù bạn chỉ quan tâm đến các đỉnh hoặc ở cả đỉnh và thung lũng, mà còn chính xác là bạn muốn ước chừng chuỗi gốc như thế nào .

Phân tích Fourier làm giảm các điểm dữ liệu của bạn. Nếu bạn đã đảo ngược hàm ở độ sâu bit nhất định bằng cách sử dụng biến đổi Fourier, bạn có thể kiểm tra chéo nếu ước tính trung bình mới tương ứng với phương tiện ban đầu của bạn. Vì vậy, để trả lời câu hỏi thứ tư của bạn: các tham số hồi quy bạn đã đề cập phụ thuộc vào độ nhạy và độ phân giải mà bạn yêu cầu. Nếu bạn không muốn có một sự phù hợp chính xác, thì bằng mọi cách chỉ cần nhập phương tiện hàng tuần trong biến đổi. Tuy nhiên, hãy cẩn thận rằng độ sâu bit thấp hơn cũng làm giảm dữ liệu. Ví dụ, lưu ý cách lớp phủ hài hòa của Epstein trên phân tích của Lieberman và các đồng nghiệp bỏ lỡ điểm giữa của chức năng bước, với một đường cong lệch sang phải một chút (ví dụ như temp. Est quá cao), vào tháng 12 trong Hình 3.


Thông số của Liebman và đồng nghiệp:

  • Độ sâu bit: 2

Thông số của Epstein:

  • Tỷ lệ mẫu: 12 [mỗi tháng]
  • Phạm vi mẫu: 24 tháng
  • Độ sâu bit: 6

Thông số của bạn:

  • Tỷ lệ mẫu: 365 [mỗi ngày]

  • Phạm vi mẫu: 5845 ngày

Phương pháp tiếp cận độ sâu bit chính xác

Phù hợp chính xác dựa trên kiểm tra trực quan. (Nếu bạn có sức mạnh, chỉ cần xem những gì xảy ra so với độ sâu bit thấp hơn.)

  • Toàn phổ (đỉnh): 17
  • Toàn phổ (chẵn / lẻ): 34

Phương pháp tiếp cận độ sâu bit biến

Đây có lẽ là những gì bạn muốn làm:

  • Chỉ so sánh các đỉnh: 6, 11, 16, 17
  • So sánh chẵn / lẻ: 12, 22, 32, 34
  • Tái hợp và so sánh các phương tiện

Cách tiếp cận này sẽ mang lại một cái gì đó tương tự như so sánh các Hình trong Epstein nếu bạn đảo ngược phép biến đổi một lần nữa, tức là tổng hợp các hạt thành một xấp xỉ của chuỗi thời gian ban đầu. Bạn cũng có thể so sánh các điểm riêng biệt của các đường cong được tổng hợp lại với các giá trị trung bình, thậm chí có thể kiểm tra sự khác biệt đáng kể để chỉ ra độ nhạy của lựa chọn độ sâu bit của bạn.


CẬP NHẬT 1:

Độ sâu bit

Một bit - viết tắt của chữ số nhị phân - là 0 hoặc 1. Các bit 010101 sẽ mô tả một sóng vuông. Độ sâu bit là 1 bit. Để mô tả một sóng cưa, bạn sẽ cần nhiều bit hơn: 01 23210. Sóng càng phức tạp thì càng cần nhiều bit:

Đây là một lời giải thích có phần đơn giản, nhưng chuỗi thời gian càng phức tạp thì càng cần nhiều bit để mô hình hóa nó. Trên thực tế, "1" là thành phần sóng hình sin chứ không phải sóng vuông (sóng vuông giống như 3 2 1 0 - xem hình đính kèm). 0 bit sẽ là một đường thẳng. Thông tin bị mất với việc giảm độ sâu bit. Ví dụ, âm thanh chất lượng CD thường là 16 bit, nhưng âm thanh chất lượng điện thoại cố định thường khoảng 8 bit.

Vui lòng đọc hình ảnh này từ trái sang phải, tập trung vào các biểu đồ:

FFT

Bạn thực sự vừa hoàn thành một phân tích phổ công suất (mặc dù ở độ phân giải cao trong hình của bạn). Mục tiêu tiếp theo của bạn sẽ là tìm ra: Tôi cần bao nhiêu thành phần trong phổ công suất để nắm bắt chính xác các phương tiện của chuỗi thời gian?

CẬP NHẬT 2


Để lọc hay không lọc

Tôi không hoàn toàn chắc chắn làm thế nào bạn sẽ giới thiệu các ràng buộc trong hồi quy vì tôi chỉ quen với các ràng buộc khoảng, nhưng có lẽ DSP là giải pháp của bạn. Đây là những gì tôi đã tìm ra cho đến nay:

  • Bước 1. Chia chuỗi thành các thành phần xoang thông qua chức năng Fourier trên bộ dữ liệu hoàn chỉnh (tính theo ngày)

  • Bước 2. Tái tạo chuỗi thời gian thông qua biến đổi Fourier ngược, với ràng buộc trung bình bổ sung được kết hợp với dữ liệu gốc: độ lệch của các phép nội suy so với phương tiện ban đầu sẽ triệt tiêu lẫn nhau (Harzallah, 1995).

Dự đoán tốt nhất của tôi là bạn sẽ phải giới thiệu sự tự phát nếu tôi hiểu đúng về Harzallah (1995, Hình 2). Vì vậy, điều đó có thể sẽ tương ứng với một bộ lọc phản ứng vô hạn (IIR)?

IIR http://paulbourke.net/misiverse/ar/

Tóm tắt:

  1. Phương tiện xuất phát từ dữ liệu thô
  2. Biến đổi dữ liệu Fourier
  3. Dữ liệu biến đổi nghịch đảo Fourier.
  4. Lọc kết quả bằng IIR

Có lẽ bạn có thể sử dụng bộ lọc IIR mà không cần thông qua phân tích Fourier? Ưu điểm duy nhất của phân tích Fourier như tôi thấy là cách ly và xác định mô hình nào có ảnh hưởng và tần suất chúng thực hiện lại (nghĩa là dao động). Sau đó, bạn có thể quyết định lọc ra những cái đóng góp ít hơn, ví dụ như sử dụng bộ lọc notch hẹp ở đỉnh đóng góp ít nhất (hoặc bộ lọc dựa trên tiêu chí của riêng bạn). Để bắt đầu, bạn có thể lọc ra các thung lũng lẻ ít đóng góp xuất hiện giống như tiếng ồn trong "tín hiệu". Tiếng ồn được đặc trưng bởi rất ít trường hợp và không có mô hình. Một bộ lọc lược ở các thành phần tần số lẻ có thể làm giảm nhiễu - trừ khi bạn tìm thấy một mẫu ở đó.

Dưới đây là một số tùy chọn binning tùy ý cho mục đích giải thích: Bạn có thể thấy tiếng ồn trong thung lũng không?

Rất tiếc - Có chức năng R cho điều đó!?

Khi tìm kiếm bộ lọc IIR, tôi tình cờ phát hiện ra các hàm R nội suy trong gói Tín hiệu. Quên tất cả mọi thứ tôi nói cho đến thời điểm này. Các phép nội suy sẽ hoạt động như của Harzallah: http://cran.r-project.org/web/packages/signal/signal.pdf

Chơi xung quanh với các chức năng. Nên làm thủ thuật.


CẬP NHẬT 3

interp1 không interp

case.interp1 <- interp1(x=(ts.frame$no.influ.cases[!is.na(ts.frame$no.influ.case)]),y=ts.frame$yearday[!is.na(ts.frame$no.influ.case)],xi=mean(WEEKLYMEANSTABLE),method = c("cubic"))

Đặt xi về phương tiện hàng tuần ban đầu.


Cảm ơn bạn rất nhiều vì câu trả lời này! Mục tiêu nghiên cứu của tôi rất đơn giản: Tôi có phương tiện hàng tuần và muốn lấy ước tính hàng ngày và giá trị trung bình của ước tính hàng ngày (nội suy) trong một tuần sẽ bằng với giá trị trung bình hàng tuần (nghĩa là điểm dữ liệu ban đầu). Bạn có nghĩ rằng điều đó là có thể? Hơn nữa, tôi không hiểu "độ sâu bit" và "phân tích đỉnh" nghĩa là gì (tôi không có kinh nghiệm gì với các phép biến đổi Fourier).
COOLSerdash

1
@COOLSerdash xem cập nhật của tôi. Có nó là có thể! Nhưng bạn sẽ cần phải tìm ra cách tốt nhất để so sánh các phương tiện ước tính từ chuỗi thời gian được tổng hợp lại với các phương tiện ban đầu từ chuỗi thời gian ban đầu.
noumenal

(Btw: +1 vào ngày mai, tôi không thể bỏ phiếu ngày hôm nay nữa). Cảm ơn rất nhiều cho bản cập nhật, bây giờ rõ ràng hơn. Tôi đã nghĩ về quy trình sau: 1) khớp một hàm phạm vi với phương tiện hàng tuần bằng hồi quy, 2) sử dụng các dự đoán của hồi quy để "điền" các khoảng trống giữa các giá trị hàng tuần (nghĩa là lấy các giá trị hàng ngày) 3) cho mỗi tuần, tính giá trị trung bình của tất cả các giá trị hàng ngày và giá trị trung bình này phải bằng giá trị ban đầu. Trong bài báo, Epstein đã sử dụng một số loại yếu tố "hiệu chỉnh" để buộc hàm phải có các thuộc tính mong muốn, nhưng tôi vẫn không chắc chắn làm thế nào để làm điều đó với hồi quy.
COOLSerdash

@COOLSerdash Xem bản cập nhật 2! Bỏ qua đoạn cuối.
noumenal

Hoàn toàn tuyệt vời! Cảm ơn bạn rất nhiều cho nghiên cứu. Lưu ý rằng tôi đã quản lý để thực hiện phương pháp của Harzallah bằng cách sử dụng splines (tuyến tính và khối). Vì vậy, tôi đoán tôi sẽ cần interp. Tôi đã chỉnh sửa câu hỏi của mình. Cảm ơn một lần nữa rất nhiều.
COOLSerdash
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.