I have a data frame with prey items, the day they were brought and their estimated weight. Some rows have NA for estimated weight and I would like to extrapolate a rough estimate by averaging the weight of the same type of prey item over a period of 3 days, being the day before the prey delivery, the same day and the day after. How should I do that? Also, the data is grouped by nest IDs. MRE:
example_data <- structure(list(broodID = structure(c(7L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 3L, 3L, 
3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 
4L, 4L, 6L, 6L, 7L, 7L, 7L, 7L, 7L, 7L, 7L, 7L, 7L, 7L, 7L, 7L, 
7L, 7L, 7L, 7L, 7L, 7L, 7L, 7L, 7L, 7L, 7L, 7L, 7L, 7L, 7L, 7L, 
7L, 7L, 7L, 7L, 7L, 7L, 7L, 7L, 7L, 7L, 7L, 8L, 8L, 8L, 8L, 8L, 
8L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 
9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 
9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 
9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L, 9L), .Label = c("2018_1", "2019_3", 
"2020_10", "2020_11", "2020_12", "2020_2", "2020_5", "2020_8", 
"2020_9"), class = "factor"), date = structure(c(18469, 17743, 
17724, 17730, 17731, 17739, 17723, 17724, 17738, 17738, 17739, 
17739, 17742, 17735, 17724, 17730, 17732, 17745, 17737, 17751, 
17725, 17725, 17725, 17725, 17726, 17729, 17723, 17730, 18104, 
18104, 18102, 18102, 18103, 18098, 18098, 18100, 18462, 18462, 
18470, 18459, 18459, 18471, 18473, 18463, 18463, 18474, 18493, 
18479, 18473, 18471, 18471, 18475, 18475, 18472, 18472, 18474, 
18411, 18411, 18462, 18462, 18461, 18462, 18470, 18464, 18449, 
18453, 18452, 18452, 18448, 18456, 18464, 18464, 18450, 18450, 
18471, 18471, 18451, 18460, 18470, 18460, 18456, 18456, 18473, 
18473, 18447, 18447, 18471, 18447, 18452, 18452, 18450, 18456, 
18459, 18488, 18464, 18451, 18458, 18455, 18469, 18453, 18461, 
18461, 18468, 18466, 18458, 18458, 18449, 18450, 18450, 18476, 
18482, 18454, 18454, 18458, 18458, 18470, 18452, 18453, 18453, 
18448, 18448, 18457, 18457, 18467, 18467, 18472, 18472, 18455, 
18457, 18457, 18461, 18461, 18465, 18465, 18453, 18453, 18458, 
18466, 18466, 18475, 18452, 18452, 18459, 18456, 18456, 18456, 
18458, 18458, 18456, 18456, 18450, 18450, 18465, 18452, 18461, 
18461, 18456, 18464, 18459), class = "Date"), PreyGroup = structure(c(1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L), .Label = "bird", class = "factor"), 
    weightcalc = c(10, 5, 10, 10, 10, 10, 15, 15, 15, 15, 15, 
    15, 15, 20, 25, 25, 25, 25, 25, 40, 45, 45, 45, 45, NA, NA, 
    NA, NA, 10, 10, 15, 15, 20, 25, NA, 20, 15, 15, 20, 20, 20, 
    20, 35, 45, 45, 50, 120, 15, 20, 20, 20, 20, 20, 25, 35, 
    45, 45, NA, 6, 6, 7, 8, 10, 12, 12, 12, 14, 14, 15, 15, 15, 
    15, 15, 15, 20, 20, 20, 25, 25, 35, 40, 40, 55, 55, 60, 60, 
    70, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, 15, 15, 20, 50, 
    50, NA, 6, 8, 8, 10, 10, 10, 15, 15, 15, 15, 15, 15, 15, 
    15, 15, 15, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 
    20, 20, 20, 20, 20, 30, 30, 30, 30, 30, 30, 35, 35, 35, 35, 
    40, 40, 45, 45, 45, 45, 70, NA, NA, NA, NA, NA, NA)), class = "data.frame", row.names = c("1", 
"2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", 
"14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", 
"25", "26", "27", "28", "29", "30", "31", "32", "33", "34", "35", 
"36", "37", "38", "39", "40", "41", "42", "43", "44", "45", "46", 
"47", "48", "49", "50", "51", "52", "53", "54", "55", "56", "57", 
"58", "59", "60", "61", "62", "63", "64", "65", "66", "67", "68", 
"69", "70", "71", "72", "73", "74", "75", "76", "77", "78", "79", 
"80", "81", "82", "83", "84", "85", "86", "87", "88", "89", "90", 
"91", "92", "93", "94", "95", "96", "97", "98", "99", "100", 
"101", "102", "103", "104", "105", "106", "107", "108", "109", 
"110", "111", "112", "113", "114", "115", "116", "117", "118", 
"119", "120", "121", "122", "123", "124", "125", "126", "127", 
"128", "129", "130", "131", "132", "133", "134", "135", "136", 
"137", "138", "139", "140", "141", "142", "143", "144", "145", 
"146", "147", "148", "149", "150", "151", "152", "153", "154", 
"155", "156", "157", "158", "159"))
 
     
    