У меня есть данные, которые выглядят так:
Classes ‘tbl_df’, ‘tbl’ and 'data.frame': 19 obs. of 7 variables:
$ Week Ending : chr "5/1/18" "5/1/18" "5/1/18" "5/1/18" ...
$ Agent : chr "telbenja ." "Tomsaint ." "davidlor ." "moniquec
." ...
$ Inbound : int 25 62 44 36 1 22 144 36 28 51 ...
$ Manual : int 0 3 4 22 0 0 13 6 2 1 ...
$ Avg Talk Time: 'hms' num 00:03:29 00:03:20 00:03:51 00:02:37 ...
..- attr(*, "units")= chr "secs"
$ Avg Wrap Time: 'hms' num 00:01:57 00:01:13 00:01:31 00:01:24 ...
..- attr(*, "units")= chr "secs"
$ Avg Hold Time: 'hms' num 00:00:11 00:00:02 00:00:02 00:00:00
Это всего лишь образец, у меня около 100 000 строк.
В конечном итоге мне нужно иметь «агента» с именем «Среднее», значения которого во всех других столбцах являются просто средними значениями всех других строк в пределах того же «окончания недели» (дата).
Я полагаю, что решение этой проблемы - это своего рода group_by и обобщение колдовства dplyr, однако я не могу заставить эту работу возвращать значения строк, группировка и подведение итогов дадут мне совершенно новый столбец, но это не то, что Я хочу, мне нужна новая запись строки для каждой даты ('Конец недели'), которая показывает среднее значение в каждом столбце одной и той же даты.
Любая помощь с этим очень ценится (полностью ожидая шока и ужаса для моей формулировки / проблемы, нажмите вниз, если у вас проблемы со сном).
Результат dput (head (my_data)):
dput(head(response_codes))
structure(list(`Response Code` = structure(c(105L, 72L, 79L,
159L, 104L, 17L), .Label = c("304001", "312001", "799007", "843001",
"951001", "1490001", "1490002", "1524002", "1524003", "1620001",
"1696001", "2297001", "2299001", "2302001", "2305001", "2312001",
"2314001", "2315001", "2316001", "2317001", "2327001", "2328001",
"2329001", "2330001", "2333001", "2374001", "2380002", "2415001",
"2420001", "2428001", "2428004", "2428005", "2428006", "2434001",
"2435002", "2444002", "2449002", "2457002", "2457003", "2462001",
"2463001", "2463002", "2478001", "2586010", "2673002", "2677001",
"2678002", "2682001", "2683002", "2835005", "2938001", "2950001",
"2974001", "3006001", "3006002", "3007001", "3046001", "3077003",
"3091001", "3093001", "3093010", "3094003", "3115001", "3115006",
"3115010", "3116001", "3116003", "3117001", "3117002", "3148001",
"3214001", "3239001", "3244001", "3245001", "3245002", "3245003",
"3262001", "3262002", "3273001", "3276001", "3276002", "3276003",
"3276005", "3276006", "3276012", "3276013", "3276017", "3276019",
"3276020", "3276021", "3276023", "3276030", "3276036", "3276037",
"3276038", "3276039", "3276043", "3276044", "3276045", "3276048",
"3276050", "3289001", "3330001", "3334001", "3334002", "3347001",
"3348001", "3361001", "3382001", "3383001", "3393001", "3394001",
"3394002", "3399001", "3403005", "3486003", "3488003", "3491001",
"3558001", "3584001", "3585002", "3586001", "3588001", "3591001",
"3677002", "3677003", "3678001", "3678002", "3691003", "3691004",
"3691005", "3691006", "3691009", "3691010", "3691014", "3692001",
"3693002", "3694002", "3695002", "3741001", "3743001", "3753001",
"3753002", "3755001", "3762001", "3765001", "3766001", "3767001",
"3767002", "3768001", "3769001", "3771001", "3772001", "3792001",
"3795001", "3797001", "3799001", "3800001", "3810001", "7014001",
"7371007", "7445001", "9007001", "9009001"), class = "factor"),
`Total Recruits` = c(518L, 467L, 345L, 335L, 333L, 224L),
`Number of 2nd Purchase (Converts)` = c(217L, 248L, 181L,
106L, 218L, 150L), `Total Cms that took a wp on or after their recruitment case` = c(187L,
169L, 142L, 104L, 361L, 233L), `Currently Closed Wine Plans` = c(135L,
130L, 108L, 79L, 295L, 188L), `Currently Active Wine Plans` = c(52L,
39L, 34L, 25L, 66L, 45L), `Upgrade to WP %` = c(36.1, 36.19,
41.16, 31.04, 108.41, 104.02), `2nd Purchase Conversion Rate` = c(41.89,
53.1, 52.46, 31.64, 65.47, 66.96), `Number of Conti Cases Purchased` = c(232L,
208L, 171L, 108L, 449L, 353L), `Number of Distinct WP Customers` = c(94L,
101L, 84L, 51L, 193L, 141L)), row.names = c(NA, -6L), class = c("tbl_df",
"tbl", "data.frame"))