ইনফ্লুয়েঞ্জা ডেটার বিরতি যা সাপ্তাহিক গড় সংরক্ষণ করে


13

সম্পাদন করা

আমার সঠিক প্রক্রিয়াটি বর্ণনা করার জন্য একটি কাগজ পেয়েছি । পার্থক্যটি কেবল হ'ল কাগজটি দৈনিকের সাথে মাসিক গড় ডেটা ইন্টারপোলেট করে, যখন মাসিক উপায় সংরক্ষণ করে। আমার কাছে এই পদ্ধতির প্রয়োগ করতে সমস্যা আছে R। কোনও ইঙ্গিত প্রশংসা করা হয়।

মূল

প্রতি সপ্তাহের জন্য, আমার কাছে নিম্নলিখিত গণনা তথ্য রয়েছে (প্রতি সপ্তাহে একটি মান):

  • চিকিৎসকের পরামর্শের সংখ্যা
  • ইনফ্লুয়েঞ্জার ক্ষেত্রে সংখ্যা

আমার লক্ষ্য হ'ল আন্তঃবিশ্লেষণ দ্বারা প্রতিদিনের ডেটা প্রাপ্ত করা (আমি লিনিয়ার বা সংক্ষিপ্ত স্প্লাইনগুলির কথা ভেবেছিলাম)। গুরুত্বপূর্ণ বিষয়টি হ'ল আমি সাপ্তাহিক গড় সংরক্ষণ করতে চাই , অর্থাৎ দৈনিক ইন্টারপোল্টেড ডেটার অর্থ এই সপ্তাহের রেকর্ড করা মানের সমান হওয়া উচিত। এছাড়াও, বিরতিটি মসৃণ হওয়া উচিত। একটি সমস্যা দেখা দিতে পারে যে একটি নির্দিষ্ট সপ্তাহে 7 দিনেরও কম সময় থাকে (উদাহরণস্বরূপ এক বছরের শুরু বা শেষের দিকে)।

আমি এই বিষয়ে পরামর্শের জন্য কৃতজ্ঞ হবে।

অনেক ধন্যবাদ.

এখানে 1995 সালের জন্য একটি নমুনা ডেটা সেট করা হয়েছে ( আপডেট হয়েছে ):

structure(list(daily.ts = structure(c(9131, 9132, 9133, 9134, 
9135, 9136, 9137, 9138, 9139, 9140, 9141, 9142, 9143, 9144, 9145, 
9146, 9147, 9148, 9149, 9150, 9151, 9152, 9153, 9154, 9155, 9156, 
9157, 9158, 9159, 9160, 9161, 9162, 9163, 9164, 9165, 9166, 9167, 
9168, 9169, 9170, 9171, 9172, 9173, 9174, 9175, 9176, 9177, 9178, 
9179, 9180, 9181, 9182, 9183, 9184, 9185, 9186, 9187, 9188, 9189, 
9190, 9191, 9192, 9193, 9194, 9195, 9196, 9197, 9198, 9199, 9200, 
9201, 9202, 9203, 9204, 9205, 9206, 9207, 9208, 9209, 9210, 9211, 
9212, 9213, 9214, 9215, 9216, 9217, 9218, 9219, 9220, 9221, 9222, 
9223, 9224, 9225, 9226, 9227, 9228, 9229, 9230, 9231, 9232, 9233, 
9234, 9235, 9236, 9237, 9238, 9239, 9240, 9241, 9242, 9243, 9244, 
9245, 9246, 9247, 9248, 9249, 9250, 9251, 9252, 9253, 9254, 9255, 
9256, 9257, 9258, 9259, 9260, 9261, 9262, 9263, 9264, 9265, 9266, 
9267, 9268, 9269, 9270, 9271, 9272, 9273, 9274, 9275, 9276, 9277, 
9278, 9279, 9280, 9281, 9282, 9283, 9284, 9285, 9286, 9287, 9288, 
9289, 9290, 9291, 9292, 9293, 9294, 9295, 9296, 9297, 9298, 9299, 
9300, 9301, 9302, 9303, 9304, 9305, 9306, 9307, 9308, 9309, 9310, 
9311, 9312, 9313, 9314, 9315, 9316, 9317, 9318, 9319, 9320, 9321, 
9322, 9323, 9324, 9325, 9326, 9327, 9328, 9329, 9330, 9331, 9332, 
9333, 9334, 9335, 9336, 9337, 9338, 9339, 9340, 9341, 9342, 9343, 
9344, 9345, 9346, 9347, 9348, 9349, 9350, 9351, 9352, 9353, 9354, 
9355, 9356, 9357, 9358, 9359, 9360, 9361, 9362, 9363, 9364, 9365, 
9366, 9367, 9368, 9369, 9370, 9371, 9372, 9373, 9374, 9375, 9376, 
9377, 9378, 9379, 9380, 9381, 9382, 9383, 9384, 9385, 9386, 9387, 
9388, 9389, 9390, 9391, 9392, 9393, 9394, 9395, 9396, 9397, 9398, 
9399, 9400, 9401, 9402, 9403, 9404, 9405, 9406, 9407, 9408, 9409, 
9410, 9411, 9412, 9413, 9414, 9415, 9416, 9417, 9418, 9419, 9420, 
9421, 9422, 9423, 9424, 9425, 9426, 9427, 9428, 9429, 9430, 9431, 
9432, 9433, 9434, 9435, 9436, 9437, 9438, 9439, 9440, 9441, 9442, 
9443, 9444, 9445, 9446, 9447, 9448, 9449, 9450, 9451, 9452, 9453, 
9454, 9455, 9456, 9457, 9458, 9459, 9460, 9461, 9462, 9463, 9464, 
9465, 9466, 9467, 9468, 9469, 9470, 9471, 9472, 9473, 9474, 9475, 
9476, 9477, 9478, 9479, 9480, 9481, 9482, 9483, 9484, 9485, 9486, 
9487, 9488, 9489, 9490, 9491, 9492, 9493, 9494, 9495), class = "Date"), 
    wdayno = c(0L, 1L, 2L, 3L, 4L, 5L, 6L, 0L, 1L, 2L, 3L, 4L, 
    5L, 6L, 0L, 1L, 2L, 3L, 4L, 5L, 6L, 0L, 1L, 2L, 3L, 4L, 5L, 
    6L, 0L, 1L, 2L, 3L, 4L, 5L, 6L, 0L, 1L, 2L, 3L, 4L, 5L, 6L, 
    0L, 1L, 2L, 3L, 4L, 5L, 6L, 0L, 1L, 2L, 3L, 4L, 5L, 6L, 0L, 
    1L, 2L, 3L, 4L, 5L, 6L, 0L, 1L, 2L, 3L, 4L, 5L, 6L, 0L, 1L, 
    2L, 3L, 4L, 5L, 6L, 0L, 1L, 2L, 3L, 4L, 5L, 6L, 0L, 1L, 2L, 
    3L, 4L, 5L, 6L, 0L, 1L, 2L, 3L, 4L, 5L, 6L, 0L, 1L, 2L, 3L, 
    4L, 5L, 6L, 0L, 1L, 2L, 3L, 4L, 5L, 6L, 0L, 1L, 2L, 3L, 4L, 
    5L, 6L, 0L, 1L, 2L, 3L, 4L, 5L, 6L, 0L, 1L, 2L, 3L, 4L, 5L, 
    6L, 0L, 1L, 2L, 3L, 4L, 5L, 6L, 0L, 1L, 2L, 3L, 4L, 5L, 6L, 
    0L, 1L, 2L, 3L, 4L, 5L, 6L, 0L, 1L, 2L, 3L, 4L, 5L, 6L, 0L, 
    1L, 2L, 3L, 4L, 5L, 6L, 0L, 1L, 2L, 3L, 4L, 5L, 6L, 0L, 1L, 
    2L, 3L, 4L, 5L, 6L, 0L, 1L, 2L, 3L, 4L, 5L, 6L, 0L, 1L, 2L, 
    3L, 4L, 5L, 6L, 0L, 1L, 2L, 3L, 4L, 5L, 6L, 0L, 1L, 2L, 3L, 
    4L, 5L, 6L, 0L, 1L, 2L, 3L, 4L, 5L, 6L, 0L, 1L, 2L, 3L, 4L, 
    5L, 6L, 0L, 1L, 2L, 3L, 4L, 5L, 6L, 0L, 1L, 2L, 3L, 4L, 5L, 
    6L, 0L, 1L, 2L, 3L, 4L, 5L, 6L, 0L, 1L, 2L, 3L, 4L, 5L, 6L, 
    0L, 1L, 2L, 3L, 4L, 5L, 6L, 0L, 1L, 2L, 3L, 4L, 5L, 6L, 0L, 
    1L, 2L, 3L, 4L, 5L, 6L, 0L, 1L, 2L, 3L, 4L, 5L, 6L, 0L, 1L, 
    2L, 3L, 4L, 5L, 6L, 0L, 1L, 2L, 3L, 4L, 5L, 6L, 0L, 1L, 2L, 
    3L, 4L, 5L, 6L, 0L, 1L, 2L, 3L, 4L, 5L, 6L, 0L, 1L, 2L, 3L, 
    4L, 5L, 6L, 0L, 1L, 2L, 3L, 4L, 5L, 6L, 0L, 1L, 2L, 3L, 4L, 
    5L, 6L, 0L, 1L, 2L, 3L, 4L, 5L, 6L, 0L, 1L, 2L, 3L, 4L, 5L, 
    6L, 0L, 1L, 2L, 3L, 4L, 5L, 6L, 0L, 1L, 2L, 3L, 4L, 5L, 6L, 
    0L, 1L, 2L, 3L, 4L, 5L, 6L, 0L), month = c(1, 1, 1, 1, 1, 
    1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 
    1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 
    2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 
    3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
    3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 
    4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 
    4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 
    5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 
    6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 
    6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 
    7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 
    8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 
    8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 
    9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 
    9, 9, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 
    10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 
    10, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 
    11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 
    11, 11, 11, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 
    12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 
    12, 12, 12, 12), year = c(1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 
    1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995, 1995), yearday = 0:364, 
    no.influ.cases = c(NA, NA, NA, 168L, NA, NA, NA, NA, NA, 
    NA, 199L, NA, NA, NA, NA, NA, NA, 214L, NA, NA, NA, NA, NA, 
    NA, 230L, NA, NA, NA, NA, NA, NA, 267L, NA, NA, NA, NA, NA, 
    NA, 373L, NA, NA, NA, NA, NA, NA, 387L, NA, NA, NA, NA, NA, 
    NA, 443L, NA, NA, NA, NA, NA, NA, 579L, NA, NA, NA, NA, NA, 
    NA, 821L, NA, NA, NA, NA, NA, NA, 1229L, NA, NA, NA, NA, 
    NA, NA, 1014L, NA, NA, NA, NA, NA, NA, 831L, NA, NA, NA, 
    NA, NA, NA, 648L, NA, NA, NA, NA, NA, NA, 257L, NA, NA, NA, 
    NA, NA, NA, 203L, NA, NA, NA, NA, NA, NA, 137L, NA, NA, NA, 
    NA, NA, NA, 78L, NA, NA, NA, NA, NA, NA, 82L, NA, NA, NA, 
    NA, NA, NA, 69L, NA, NA, NA, NA, NA, NA, 45L, NA, NA, NA, 
    NA, NA, NA, 51L, NA, NA, NA, NA, NA, NA, 45L, NA, NA, NA, 
    NA, NA, NA, 63L, NA, NA, NA, NA, NA, NA, 55L, NA, NA, NA, 
    NA, NA, NA, 54L, NA, NA, NA, NA, NA, NA, 52L, NA, NA, NA, 
    NA, NA, NA, 27L, NA, NA, NA, NA, NA, NA, 24L, NA, NA, NA, 
    NA, NA, NA, 12L, NA, NA, NA, NA, NA, NA, 10L, NA, NA, NA, 
    NA, NA, NA, 22L, NA, NA, NA, NA, NA, NA, 42L, NA, NA, NA, 
    NA, NA, NA, 32L, NA, NA, NA, NA, NA, NA, 52L, NA, NA, NA, 
    NA, NA, NA, 82L, NA, NA, NA, NA, NA, NA, 95L, NA, NA, NA, 
    NA, NA, NA, 91L, NA, NA, NA, NA, NA, NA, 104L, NA, NA, NA, 
    NA, NA, NA, 143L, NA, NA, NA, NA, NA, NA, 114L, NA, NA, NA, 
    NA, NA, NA, 100L, NA, NA, NA, NA, NA, NA, 83L, NA, NA, NA, 
    NA, NA, NA, 113L, NA, NA, NA, NA, NA, NA, 145L, NA, NA, NA, 
    NA, NA, NA, 175L, NA, NA, NA, NA, NA, NA, 222L, NA, NA, NA, 
    NA, NA, NA, 258L, NA, NA, NA, NA, NA, NA, 384L, NA, NA, NA, 
    NA, NA, NA, 755L, NA, NA, NA, NA, NA, NA, 976L, NA, NA, NA, 
    NA, NA, NA, 879L, NA, NA, NA, NA), no.consultations = c(NA, 
    NA, NA, 15093L, NA, NA, NA, NA, NA, NA, 20336L, NA, NA, NA, 
    NA, NA, NA, 20777L, NA, NA, NA, NA, NA, NA, 21108L, NA, NA, 
    NA, NA, NA, NA, 20967L, NA, NA, NA, NA, NA, NA, 20753L, NA, 
    NA, NA, NA, NA, NA, 18782L, NA, NA, NA, NA, NA, NA, 19778L, 
    NA, NA, NA, NA, NA, NA, 19223L, NA, NA, NA, NA, NA, NA, 21188L, 
    NA, NA, NA, NA, NA, NA, 22172L, NA, NA, NA, NA, NA, NA, 21965L, 
    NA, NA, NA, NA, NA, NA, 21768L, NA, NA, NA, NA, NA, NA, 21277L, 
    NA, NA, NA, NA, NA, NA, 16383L, NA, NA, NA, NA, NA, NA, 15337L, 
    NA, NA, NA, NA, NA, NA, 19179L, NA, NA, NA, NA, NA, NA, 18705L, 
    NA, NA, NA, NA, NA, NA, 19623L, NA, NA, NA, NA, NA, NA, 19363L, 
    NA, NA, NA, NA, NA, NA, 16257L, NA, NA, NA, NA, NA, NA, 19219L, 
    NA, NA, NA, NA, NA, NA, 17048L, NA, NA, NA, NA, NA, NA, 19231L, 
    NA, NA, NA, NA, NA, NA, 20023L, NA, NA, NA, NA, NA, NA, 19331L, 
    NA, NA, NA, NA, NA, NA, 18995L, NA, NA, NA, NA, NA, NA, 16571L, 
    NA, NA, NA, NA, NA, NA, 15010L, NA, NA, NA, NA, NA, NA, 13714L, 
    NA, NA, NA, NA, NA, NA, 10451L, NA, NA, NA, NA, NA, NA, 14216L, 
    NA, NA, NA, NA, NA, NA, 16800L, NA, NA, NA, NA, NA, NA, 18305L, 
    NA, NA, NA, NA, NA, NA, 18911L, NA, NA, NA, NA, NA, NA, 17812L, 
    NA, NA, NA, NA, NA, NA, 18665L, NA, NA, NA, NA, NA, NA, 18977L, 
    NA, NA, NA, NA, NA, NA, 19512L, NA, NA, NA, NA, NA, NA, 17424L, 
    NA, NA, NA, NA, NA, NA, 14464L, NA, NA, NA, NA, NA, NA, 16383L, 
    NA, NA, NA, NA, NA, NA, 19916L, NA, NA, NA, NA, NA, NA, 18255L, 
    NA, NA, NA, NA, NA, NA, 20113L, NA, NA, NA, NA, NA, NA, 20084L, 
    NA, NA, NA, NA, NA, NA, 20196L, NA, NA, NA, NA, NA, NA, 20184L, 
    NA, NA, NA, NA, NA, NA, 20261L, NA, NA, NA, NA, NA, NA, 22246L, 
    NA, NA, NA, NA, NA, NA, 23030L, NA, NA, NA, NA, NA, NA, 10487L, 
    NA, NA, NA, NA)), .Names = c("daily.ts", "wdayno", "month", 
"year", "yearday", "no.influ.cases", "no.consultations"), row.names = c(NA, 
-365L), class = "data.frame")

4
এই প্রশ্নটি এলাকা-থেকে-পয়েন্ট ইন্টারপোলেশনের এক-মাত্রিক সংস্করণের জন্য জিজ্ঞাসা করে , যা খনির শিল্পে যথেষ্ট ভালভাবে অধ্যয়ন করা হয়। রেফারেন্সযুক্ত বিমূর্তটি স্পষ্টভাবে নোট করে যে ভূ-তাত্ত্বিক পদ্ধতিগুলি "সুসংগত (গণ-সংরক্ষণের ...) পূর্বাভাস দেয়"। আমি বিশ্বাস করি যে এই পন্থাগুলি নিক নিক কক্সের আপত্তিগুলি কাটিয়ে উঠেছে।
whuber

@ হুবুহু রেফারেন্সের জন্য ধন্যবাদ, আমি অসচেতন ছিলাম যে এই ধরণের সমস্যা জিওস্ট্যাটিক্সে সুপরিচিত। আপনি Rবা অন্যান্য পরিসংখ্যান প্যাকেজগুলিতে (আমার কাছে আরকজিআইএস এর অ্যাক্সেস নেই) এ জাতীয় পদ্ধতির কোনও প্রয়োগ সম্পর্কে সচেতন ? একটি নিবিড়ভাবে উপলব্ধ বাস্তবায়ন ছাড়া, আমি এখনও আটকে আছি, আমি ভয় করি afraid
COOLSerdash

2
আমি বিশ্বাস করি কোডটি কোড ব্যবহার করে এটি করা যেতে পারে geoRglm, তবে আপনার ভেরোগ্রাফি এবং সমর্থন পরিবর্তনের (যা স্থানিক পারস্পরিক সম্পর্কের মডেলটি বিকাশের জন্য প্রয়োজন) খুব ভাল বোঝার থাকে provided ম্যানুয়ালটি
স্প্রঞ্জার

3
গোষ্ঠীভিত্তিক ডেটা বিভাগের বিভাগগুলি ডেমোগ্রাফির একটি সাধারণ পদ্ধতি। একটি অনুসন্ধান শব্দটি হ'ল "স্প্রেগ ইন্টারপোলেশন"; এটি আপনাকে বিভিন্ন পরিবর্তনের দিকে নিয়ে যাবে। একরঙা বক্ররেখাকে আশ্বস্ত করে এমনভাবে संचयी মানগুলিতে একটি পঞ্চম ডিগ্রি স্প্লাইনের মাধ্যমে এই পদ্ধতিটি এবং এর রূপগুলি কার্যকরভাবে গোষ্ঠীভুক্ত ডেটা পুনরায় বিভাজন করে। (এটি ১৮৮০ সাল থেকে প্রায়।) জেনেরিক শব্দটি হ'ল "দোলনাদায়ক দোলন"। রব হ্যান্ডম্যান, অন্যদের মধ্যে, এই বিষয়ে লিখেছেন: স্মিথ, হ্যান্ডম্যান এবং উড দেখুন, ডেমোগ্রাফিক ভেরিয়েবলগুলির জন্য স্প্লাইন ইন্টারপোলেশন: মনোটোনসিটির সমস্যা, জে পপ। রেস। 21 নং 1 (2004), 95-98।
whuber

2
আপনার প্রশ্নটি এক মাত্রায় ড্যাসিমেট্রিক ম্যাপিং হিসাবে দেখা যেতে পারে । মানক আদমশুমারি ইউনিটগুলির মতো কিছু সামগ্রিক স্তরে পরিমাপ করা হয়েছে এমন পরিমাণের বিশদ মানচিত্র উত্পাদন করার জন্য এটি একটি প্রক্রিয়া। (এটি কমপক্ষে ১৯৩36-এ সন্ধান করা যেতে পারে: জন কে রাইট দেখুন, জনসংখ্যার ঘনত্বের মানচিত্রের একটি পদ্ধতি: উদাহরণ হিসাবে কেপ কোড সহ। ভৌগলিক পর্যালোচনা 26: 1 (জানুয়ারী 1936), পিপি 103-110।) সাম্প্রতিক পদ্ধতির (কিছুটা তদর্থক , কিন্তু একটি ছোট সহায়ক তথ্যসূত্রের সঙ্গে) দেখতে giscience.org/proceedings/abstracts/giscience2012_paper_179.pdf
whuber

উত্তর:


8

আমি এমন একটি Rক্রিয়াকলাপ পরিচালনা করতে সক্ষম হয়েছি যা মাধ্যমগুলি সংরক্ষণ করার সময় লাইন এবং স্প্লাইনের সাহায্যে (যেমন সাপ্তাহিক, মাসিক ইত্যাদি) বিভক্ত করে। এটি ফাংশন na.approxএবং প্যাকেজna.spline থেকে ব্যবহার করে এবং পুনরাবৃত্তভাবে পছন্দসই বৈশিষ্ট্যগুলির সাথে স্প্লিনগুলি গণনা করে। অ্যালগরিদম এই কাগজে বর্ণিত হয়েছে ।zoo

কোডটি এখানে:

interpol.consmean <- function(y, period=7, max.iter=100, tol=1e-4, plot=FALSE) {

  require(zoo)

  if( plot == TRUE ) {
    require(ggplot2)
  }

  y.temp.linear <- matrix(NA, ncol=length(y), nrow=max.iter+1)
  y.temp.linear[1, ] <- y

  y.temp.spline <- y.temp.linear

  y.temp.pred.spline <- matrix(NA, ncol=length(y), nrow=max.iter)
  y.temp.pred.linear <- matrix(NA, ncol=length(y), nrow=max.iter)

  ind.actual <- which(!is.na(y))

  if ( !all(diff(ind.actual)[1]== diff(ind.actual)) ) {
    stop("\"y\" must contain an evenly spaced time series")
  }

  partial <- ifelse((length(y) - ind.actual[length(ind.actual)]) < period/2,
                    TRUE, FALSE)

  for(k in 1:max.iter) {

    y.temp.pred.linear[k,] <- na.approx(y.temp.linear[k, ], na.rm=FALSE, rule=2)
    y.temp.pred.spline[k,] <- na.spline(y.temp.spline[k, ], method="fmm")

    interpol.means.linear <- rollapply(y.temp.pred.linear[k,], width=period, mean,
                                       by=period, align="left", partial=partial) 
    interpol.means.splines <- rollapply(y.temp.pred.spline[k,], width=period, mean,
                                        by=period, align="left", partial=partial) 

    resid.linear <- y.temp.linear[k, ][ ind.actual ] - interpol.means.linear
    resid.spline <- y.temp.spline[k, ][ ind.actual ] - interpol.means.splines

    if ( max(resid.linear, na.rm=TRUE) < tol & max(resid.spline, na.rm=TRUE) < tol ){
      cat("Converged after", k, "iterations with tolerance of", tol, sep=" ")
      break
    }

    y.temp.linear[k+1, ][!is.na(y.temp.linear[k, ])] <-  resid.linear
    y.temp.spline[k+1, ][!is.na(y.temp.spline[k, ])] <-  resid.spline

  }  

  interpol.linear.final <- colSums(y.temp.pred.linear, na.rm=TRUE)
  interpol.spline.final <- colSums(y.temp.pred.spline, na.rm=TRUE)

  if ( plot == TRUE ) {

    plot.frame <- data.frame(
      y=rep(y,2)/7,
      x=rep(1:length(y),2),
      inter.values=c(interpol.linear.final, interpol.spline.final)/7,
      method=c(rep("Linear", length(y)), rep("Spline", length(y)))
    )

    p <- ggplot(data=plot.frame, aes(x=x)) +
      geom_point(aes(y=y, x=x), size=4) +
      geom_line(aes(y=inter.values, color=method), size=1) +
      ylab("y") +
      xlab("x") +
      theme(axis.title.y =element_text(vjust=0.4, size=20, angle=90)) +
      theme(axis.title.x =element_text(vjust=0, size=20, angle=0)) +
      theme(axis.text.x =element_text(size=15, colour = "black")) +
      theme(axis.text.y =element_text(size=17, colour = "black")) +
      theme(panel.background =  element_rect(fill = "grey85", colour = NA),
            panel.grid.major =  element_line(colour = "white"),
            panel.grid.minor =  element_line(colour = "grey90", size = 0.25))+
      scale_color_manual(values=c("#377EB8", "#E41A1C"), 
                         name="Interpolation method",
                         breaks=c("Linear", "Spline"),
                         labels=c("Linear", "Spline")) +
      theme(legend.position="none") +
      theme(strip.text.x = element_text(size=16)) +
      facet_wrap(~ method)

    suppressWarnings(print(p))

  }
  list(linear=interpol.linear.final, spline=interpol.spline.final)
}

প্রশ্নে দেওয়া উদাহরণস্বরূপ ডেটাসেটটিতে ফাংশনটি প্রয়োগ করুন:

interpolations <- interpol.consmean(y=dat.frame$no.influ.cases, period=7,
                                    max.iter = 100, tol=1e-6, plot=TRUE)

Interpolations

উভয় লিনিয়ার এবং স্প্লাইন বিরতি সূক্ষ্ম মনে হয়। আসুন পরীক্ষা করে নিন যে সাপ্তাহিক উপায়গুলি সংরক্ষণ করা হয়েছে (কাটা আউটপুট):

cbind(dat.frame$no.influ.cases[!is.na(dat.frame$no.influ.cases)],
      rollapply(interpolations$linear, 7, mean, by=7, align="left", partial=F))

      [,1] [,2]
 [1,]  168  168
 [2,]  199  199
 [3,]  214  214
 [4,]  230  230
 [5,]  267  267
 [6,]  373  373
 [7,]  387  387
 [8,]  443  443
 [9,]  579  579
[10,]  821  821
[11,] 1229 1229

1
আপনার এটির জন্য উপযুক্ত প্যাকেজটি খুঁজে পাওয়া উচিত এবং রক্ষণাবেক্ষণকারীরা যদি এটি অন্তর্ভুক্ত করতে চান তবে তাদের জিজ্ঞাসা করুন।
স্পেসডম্যান

4

রেঞ্জের মিডপয়েন্টে গড়ের মধ্য দিয়ে যাওয়া যে কোনও সরল রেখা দৈনিক মানগুলি তৈরি করে যার প্রয়োজনীয় গড় আছে। 'দিনের সংখ্যা অনুসারে সাপ্তাহিক গণনা বিভক্ত করা' সম্পর্কে নিক কক্সের শেষ মন্তব্যটি গ্রেডিয়েন্ট = 0 সহ এর একটি বিশেষ ঘটনা।

সুতরাং আমরা এটি সামঞ্জস্য করতে পারি এবং জিনিসগুলি সম্ভবত কিছুটা মসৃণ করতে গ্রেডিয়েন্টটি চয়ন করতে পারি। এরকম কিছু করার জন্য এখানে তিনটি আর ফাংশন রয়েছে:

interpwk <- function(x,y,delta){
  offset=-3:3
  yout=y+delta*offset
  xout=x+offset
  cbind(xout,yout)
}

get_delta <- function(x,y,pos){
  (y[pos+1]-y[pos-1])/(x[pos+1]-x[pos-1])
}

#' get slope from neighbours
interpall <- function(x,y,delta1,f=1){
  for(i in 2:(length(x)-1)){
    delta=get_delta(x,y,i)
    xyout=interpwk(x[i],y[i],delta/f)
    points(xyout)
  }
}

আপনার ডেটাতে একটি দিনের পরিমাপ যোগ করুন, তারপরে প্লট করুন এবং তারপরে ইন্টারপোলটারটি প্লট করুন:

> data$day=data$week*7
> plot(data$day,data$no.influ.cases,type="l")
> interpall(data$day,data$no.influ.cases,f=1)

রৈখিক গড়-সংরক্ষণকারী ইন্টারপোলটার

আরেকটি সম্ভাবনা হ'ল সাপ্তাহিক ছুটির দিনে ধারাবাহিকতা সীমাবদ্ধ করা তবে এটি আপনাকে কেবলমাত্র এক ডিগ্রি স্বাধীনতার সাথে একটি সিস্টেম দেয় - যেমন এটি প্রথম বিভাগের opeাল দ্বারা সম্পূর্ণরূপে সংজ্ঞায়িত হয় (কারণ এরপরে অন্যান্য সমস্ত বিভাগকে যোগ দিতে হবে)। আমি এটিকে কোড করে দিইনি - আপনি যেতে পারেন!

[সামান্য জঞ্জাল আর কোডের জন্য অ্যাপলস, এগুলি বিন্যাস করার পরিবর্তে পয়েন্টগুলি সত্যই ফিরিয়ে দেওয়া উচিত]


+1, ধন্যবাদ সমস্যাটি হ'ল আন্তঃবিবাহিত মানগুলি মসৃণ নয় এবং সপ্তাহগুলির মধ্যে বেশ আকস্মিক পদক্ষেপ রয়েছে। আমি আমার প্রশ্নটি একটি কাগজ সহ সম্পাদনা করেছি যা মূলত আমার প্রয়োজনীয় পদ্ধতির ব্যাখ্যা করে।
COOLSerdash

এখানে উদ্দেশ্য কি? অনুমান কেন ইনফ্লুয়েঞ্জা কেস সহজেই পরিবর্তিত হয়? এই ডেটাগুলিকে আপনি দ্বিখন্ডিত করে যত বেশি কাঠামো রাখবেন, কাঠামোগুলি আরও কার্যকরভাবে কিছু মডেলিং পর্যায়ে বিচ্ছিন্ন হতে হবে। আমি মনে করি না আপনি আমার মে 19 এর মন্তব্যকে সম্বোধন করেছেন "" প্রতিদিনের তথ্যগুলিতে সাপ্তাহিক তথ্য উত্থাপন কেবলমাত্র প্রবর্তিত নির্ভরতা এবং স্বাধীনতার বর্ধমানভাবে-আশাবাদী ডিগ্রি নিয়ে সমস্যা তৈরি করে যা মডেল ফিটিং এবং মূল্যায়ন হবে dev "
নিক কক্স

গড় সীমাবদ্ধ যদিও ভুল। আপনি যে গড়টি এখানে দেখছেন সেটি একটি নমুনা গড় এবং কোনও উপায়ে পরিসংখ্যানগত প্রকরণের সাপেক্ষে। কোনও মডেল তৈরি করুন, তারপরে এমন একটি ইন্টারপোলটার ব্যবহার করুন যার অর্থটি তার প্রত্যাশা হিসাবে রয়েছে, তারপরে প্রতিদিনের ডেটার একাধিক ইমপ্লিটেশন করুন এবং এই অনিশ্চয়তা কীভাবে আপনার সিদ্ধান্তে প্রভাব ফেলবে তা নির্ধারণ করতে আপনার বিশ্লেষণ একশ বা আরও কয়েকবার করুন।
স্পেসডম্যান

1
@ স্পস্পিডম্যান জিওস্ট্যাটিস্টিকাল এপিআই পদ্ধতিগুলি আমি (প্রশ্নের মন্তব্যে) উল্লেখ করেছি ভ্যারোগ্রাম ন্যাজেট প্যারামিটারের ননজারো উপাদানটির সাহায্যে আপনার (যথেষ্ট বৈধ) আপত্তিটি অ্যাপলম্বের সাথে পরিচালনা করবে। ভূ-তাত্ত্বিক শর্তসাপেক্ষ সিমুলেশনগুলি হ'ল আপনি যে একাধিক অভিব্যক্তি উল্লেখ করেছেন তা সম্পাদন করার একটি নিয়ন্ত্রিত পদ্ধতি।
হোবার

2
একেবারে। আপনার একটি দ্বিমাত্রিক পরিস্থিতি দেখা যাচ্ছে যা জিওআরজিএলএম (গাম্বিয়ায় ম্যালেরিয়া ক্ষেত্রে, জলাবদ্ধতার সান্নিধ্য ইত্যাদির সাথে কোভেরিয়েটস) হিসাবে ডিজিটাল অ্যান্ড রিবেইরো ম্যানুয়ালিয়ালের প্রায় চলমান উদাহরণের মতো। মূল জটিলতা হ'ল সহায়তা পরিবর্তনের বিষয়টি পরিচালনা করা, তবে এটি ভবিষ্যদ্বাণীকে সত্যই প্রভাবিত করবে না: এটি মূলত ভেরোগ্রামের অনুমানকে প্রভাবিত করবে। কিছু তত্ত্ব এবং অনুরূপ উদাহরণ (রোগের ক্ষেত্রে "দ্বিপদী ক্রিগিং") জন্য ncbi.nlm.nih.gov/pmc/articles/PMC2995922 দেখুন ।
whuber

3

n

(যদি ডেটা গণনা করার পরিবর্তে পরিমাপ করা হত তবে আমি একটি ডেরিচলেট মডেলের মাধ্যমে অনুপাতে মডেলিংয়ের দিকে ঝুঁকতাম, তবে এতে কিছুটা বেশি জড়িত))

যতক্ষণ দিনের সংখ্যা সর্বদা একই থাকে না তা কোনও নির্দিষ্ট সমস্যা হওয়া উচিত নয়, যতক্ষণ আপনি জানেন এটি কী - যতক্ষণ আপনি কোনও অফসেট ব্যবহার করে জিনিসগুলিকে একই 'পর্যায়ে' রাখেন না।


1
আমি ভুল হলে আমাকে সংশোধন করুন, তবে আমি মনে করি এটির পিছনে প্রশ্ন রয়েছে। এটি কীভাবে দৈনিক সংখ্যাগুলি মসৃণ করতে পারে তা নয়; সাপ্তাহিক তথ্য থেকে দৈনিক গণনা অনুমান করার উপায় এটি। (সম্ভবত পোস্টারটিতে অন্য কোনও কিছুর জন্য প্রতিদিনের ডেটা রয়েছে, উদাহরণস্বরূপ তাপমাত্রা from আমার কাছে আরও পয়েসনের মতো দেখাচ্ছে।
নিক কক্স

@ নিককক্স আপনি নিখুঁতভাবে সঠিক, স্পষ্টতার জন্য ধন্যবাদ: আমার কাছে সাপ্তাহিক ডেটা রয়েছে এবং প্রতিদিনের ডেটা চাই কারণ আমার কাছে প্রতিদিন অন্যান্য ডেটা থাকে (যেমন আবহাওয়া পরিবর্তনশীল, মরণপাত, বায়ু দূষণ ইত্যাদি)।
COOLSerdash

3
আপনি কেন এটি করতে চান তা জিজ্ঞাসা করাতে আমার নিজের প্রশ্নটি। আমি উপরের মতো অনুমান করছি যে আপনার কাছে কিছু দৈনিক ডেটা রয়েছে এবং একই ভিত্তিতে সবকিছু চান। যদি তা হয় তবে দৈনিক তথ্যগুলিকে কিছুটা মিনিট, গড়, মধ্যম, সর্বাধিক সপ্তাহে বা বৈজ্ঞানিক বোধগম্য হওয়া বিবেচনা করুন। প্রতিদিনের ডেটাতে সাপ্তাহিক তথ্য ফুটিয়ে তোলা কেবল প্রবর্তিত নির্ভরতা এবং স্বাধীনতার বন্যভাবে ওভার-আশাবাদী ডিগ্রি নিয়ে সমস্যা তৈরি করে যা মডেল ফিটিং এবং মূল্যায়নকে বিভ্রান্ত করবে।
নিক কক্স

@ নিক কক্স এটি একেবারে "অনুমান করা", কিন্তু প্রদত্ত তথ্যে দেখা যায় যে ওপি পরে কী ছিল।
গ্লেন_বি -রিনস্টেট মনিকা

2
আর একটি রক্ষণশীল পন্থা হ'ল সাপ্তাহিক গণনাগুলিকে দিনের সংখ্যা দ্বারা বিভক্ত করা। আমি জানি একটি অনুমান আছে যে আসল প্রক্রিয়াটি এর চেয়ে মসৃণ হবে, তবে এটির মাধ্যমটি সংরক্ষণ করবে।
নিক কক্স

3

আমি অন্য উত্তর হিসাবে কিছু অতিরিক্ত মন্তব্য একসাথে বান্ডেল করব।

এই প্রকল্পের কাঠামো পরিষ্কার হয়ে উঠতে কিছুটা সময় নিয়েছে। প্রদত্ত যে ইনফ্লুয়েঞ্জা এখন বেশিরভাগের মধ্যে একটি সমবায় হিসাবে প্রকাশিত হয়েছে, আপনি যা করেন এটি বেশ গুরুত্বপূর্ণ বলে মনে হয় না, বা কমপক্ষে আমার পূর্ববর্তী কয়েকটি মন্তব্যে সংশয়বাদ প্রকাশ করার যোগ্যতা অর্জন করা উচিত নয়। যেহেতু সমস্ত কিছু প্রতিদিনের ভিত্তিতে হয়, তাই সমস্ত কিছুকে সপ্তাহে হ্রাস করা খুব বেশি বিশদ বিবরণ ফেলে দেয়।

প্রশ্নের মূল কেন্দ্রবিন্দু রয়ে গেছে, অন্তরঙ্গকরণের উপর যা সাপ্তাহিক মানে সংরক্ষণ করে যার কোনটির (চরম) উত্তর হ'ল সাপ্তাহিক গড়টি সাপ্তাহিক গড়কে সংরক্ষণ করে। যেহেতু অবিশ্বাস্যরূপে অযৌক্তিক বা অবাস্তব মনে হয়, অন্যান্য স্প্রোলেশন পদ্ধতিগুলি @ স্পিডম্যান দ্বারা প্রস্তাবিত হিসাবে আরও আকর্ষণীয় এবং / অথবা অভিব্যক্তির পদ্ধতি বলে মনে হয়। (বেশিরভাগ ক্ষেত্রেই এটি অস্থায়ী স্বাদ বা অভিযুক্ত স্টোকেস্টিক গন্ধের সাথে অন্তরুক্ত হবে কিনা তা আমি পরিষ্কার নয়))

আরও দুটি নির্দিষ্ট চিন্তা:

  • সাপ্তাহিক মানগুলি (দিনের সংখ্যা দ্বারা বিভক্ত) নেওয়া এবং তারপরে ওজনযুক্ত গড়ের সাথে স্মুথ করা ভাল অভ্যাসের গড়টি সংরক্ষণের অনুশীলনে সম্ভবত কার্যকর হবে।

  • যেহেতু ইনফ্লুয়েঞ্জা কেসগুলি গণনা করা হয়, রুট বা লগের গণনাগুলি মসৃণ করা এবং তারপরে ব্যাক-ট্রান্সফর্মিং কেবল গণনাগুলিকে মসৃণ করার চেয়ে আরও ভাল কাজ করতে পারে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.