Search code examples
rgroup-bylag

Column length error when using lag and group_by


I am trying to create a new column which uses lag when grouped by another variable (my week column).

I have tried using dplyr based on the other queries that I have read but the solutions don't appear to be working for me. I am not sure if it just my dataset or I am missing something glaringly obvious!

I have tried the following:

model <- 
  model %>%
  group_by(week) %>%
  mutate(lag_kWh_at_r1 = dplyr::lag(model$kwh_at_r1, n = 1, default = 0)
  )

but this returns the below error:

Error: Column `lag_kWh_at_r1` must be length 7 (the group size) or one, not 182

I also tried adding mutate(lag_kwh_at_r1 = 0) %>%before the group_by but this did not help.

I would expect the first day of each week in the lag_kwh_at_r1 to be 0.00.

Any ideas?

My current data set is:

dput(model)
structure(list(day = 1:182, week_day = structure(c(3L, 4L, 2L, 
6L, 7L, 5L, 1L, 3L, 4L, 2L, 6L, 7L, 5L, 1L, 3L, 4L, 2L, 6L, 7L, 
5L, 1L, 3L, 4L, 2L, 6L, 7L, 5L, 1L, 3L, 4L, 2L, 6L, 7L, 5L, 1L, 
3L, 4L, 2L, 6L, 7L, 5L, 1L, 3L, 4L, 2L, 6L, 7L, 5L, 1L, 3L, 4L, 
2L, 6L, 7L, 5L, 1L, 3L, 4L, 2L, 6L, 7L, 5L, 1L, 3L, 4L, 2L, 6L, 
7L, 5L, 1L, 3L, 4L, 2L, 6L, 7L, 5L, 1L, 3L, 4L, 2L, 6L, 7L, 5L, 
1L, 3L, 4L, 2L, 6L, 7L, 5L, 1L, 3L, 4L, 2L, 6L, 7L, 5L, 1L, 3L, 
4L, 2L, 6L, 7L, 5L, 1L, 3L, 4L, 2L, 6L, 7L, 5L, 1L, 3L, 4L, 2L, 
6L, 7L, 5L, 1L, 3L, 4L, 2L, 6L, 7L, 5L, 1L, 3L, 4L, 2L, 6L, 7L, 
5L, 1L, 3L, 4L, 2L, 6L, 7L, 5L, 1L, 3L, 4L, 2L, 6L, 7L, 5L, 1L, 
3L, 4L, 2L, 6L, 7L, 5L, 1L, 3L, 4L, 2L, 6L, 7L, 5L, 1L, 3L, 4L, 
2L, 6L, 7L, 5L, 1L, 3L, 4L, 2L, 6L, 7L, 5L, 1L, 3L, 4L, 2L, 6L, 
7L, 5L, 1L), .Label = c("Fri", "Mon", "Sat", "Sun", "Thurs", 
"Tues", "Weds"), class = "factor"), date_day = c(1L, 2L, 3L, 
4L, 5L, 6L, 7L, 8L, 9L, 10L, 11L, 12L, 13L, 14L, 15L, 16L, 17L, 
18L, 19L, 20L, 21L, 22L, 23L, 24L, 25L, 26L, 27L, 28L, 29L, 30L, 
31L, 1L, 2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L, 11L, 12L, 13L, 
14L, 15L, 16L, 17L, 18L, 19L, 20L, 21L, 22L, 23L, 24L, 25L, 26L, 
27L, 28L, 29L, 30L, 1L, 2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L, 
11L, 12L, 13L, 14L, 15L, 16L, 17L, 18L, 19L, 20L, 21L, 22L, 23L, 
24L, 25L, 26L, 27L, 28L, 29L, 30L, 31L, 1L, 2L, 3L, 4L, 5L, 6L, 
7L, 8L, 9L, 10L, 11L, 12L, 13L, 14L, 15L, 16L, 17L, 18L, 19L, 
20L, 21L, 22L, 23L, 24L, 25L, 26L, 27L, 28L, 29L, 30L, 31L, 1L, 
2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L, 11L, 12L, 13L, 14L, 15L, 
16L, 17L, 18L, 19L, 20L, 21L, 22L, 23L, 24L, 25L, 26L, 27L, 28L, 
1L, 2L, 3L, 4L, 5L, 6L, 7L, 8L, 9L, 10L, 11L, 12L, 13L, 14L, 
15L, 16L, 17L, 18L, 19L, 20L, 21L, 22L, 23L, 24L, 25L, 26L, 27L, 
28L, 29L, 30L, 31L), month = structure(c(6L, 6L, 6L, 6L, 6L, 
6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 
6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 5L, 5L, 5L, 5L, 5L, 5L, 
5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 
5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 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, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 
3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 
3L, 3L, 3L, 3L, 3L, 3L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 
2L, 2L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 
4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 
4L), .Label = c("dec", "feb", "jan", "mar", "nov", "oct"), class = "factor"), 
    week = c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 
    2L, 2L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 4L, 4L, 4L, 4L, 4L, 4L, 
    4L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 6L, 6L, 6L, 6L, 6L, 6L, 6L, 
    7L, 7L, 7L, 7L, 7L, 7L, 7L, 8L, 8L, 8L, 8L, 8L, 8L, 8L, 9L, 
    9L, 9L, 9L, 9L, 9L, 9L, 10L, 10L, 10L, 10L, 10L, 10L, 10L, 
    11L, 11L, 11L, 11L, 11L, 11L, 11L, 12L, 12L, 12L, 12L, 12L, 
    12L, 12L, 13L, 13L, 13L, 13L, 13L, 13L, 13L, 14L, 14L, 14L, 
    14L, 14L, 14L, 14L, 15L, 15L, 15L, 15L, 15L, 15L, 15L, 16L, 
    16L, 16L, 16L, 16L, 16L, 16L, 17L, 17L, 17L, 17L, 17L, 17L, 
    17L, 18L, 18L, 18L, 18L, 18L, 18L, 18L, 19L, 19L, 19L, 19L, 
    19L, 19L, 19L, 20L, 20L, 20L, 20L, 20L, 20L, 20L, 21L, 21L, 
    21L, 21L, 21L, 21L, 21L, 22L, 22L, 22L, 22L, 22L, 22L, 22L, 
    23L, 23L, 23L, 23L, 23L, 23L, 23L, 24L, 24L, 24L, 24L, 24L, 
    24L, 24L, 25L, 25L, 25L, 25L, 25L, 25L, 25L, 26L, 26L, 26L, 
    26L, 26L, 26L, 26L), top_up = c(7.5, 0, 0, 0, 0, 0, 0, 7.5, 
    0, 0, 0, 0, 0, 0, 7.5, 0, 0, 0, 0, 0, 0, 7.5, 0, 0, 0, 0, 
    0, 0, 7.5, 0, 0, 0, 0, 0, 0, 7.5, 0, 0, 0, 0, 0, 0, 7.5, 
    0, 0, 0, 0, 0, 0, 7.5, 0, 0, 0, 0, 0, 0, 7.5, 0, 0, 0, 0, 
    0, 0, 7.5, 0, 0, 0, 0, 0, 0, 7.5, 0, 0, 0, 0, 0, 0, 7.5, 
    0, 0, 0, 0, 0, 0, 7.5, 0, 0, 0, 0, 0, 0, 7.5, 0, 0, 0, 0, 
    0, 0, 7.5, 0, 0, 0, 0, 0, 0, 7.5, 0, 0, 0, 0, 0, 0, 7.5, 
    0, 0, 0, 0, 0, 0, 7.5, 0, 0, 0, 0, 0, 0, 7.5, 0, 0, 0, 0, 
    0, 0, 7.5, 0, 0, 0, 0, 0, 0, 7.5, 0, 0, 0, 0, 0, 0, 7.5, 
    0, 0, 0, 0, 0, 0, 7.5, 0, 0, 0, 0, 0, 0, 7.5, 0, 0, 0, 0, 
    0, 0, 7.5, 0, 0, 0, 0, 0, 0, 7.5, 0, 0, 0, 0, 0, 0), daily_heat_use = c(26, 
    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 
    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 
    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 
    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 
    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 
    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 
    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 
    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 
    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 
    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 
    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 
    26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 
    26), daily_hw_use = c(15.38, 15.38, 15.38, 15.38, 15.38, 
    15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 
    15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 
    15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 
    15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 
    15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 
    15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 
    15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 
    15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 
    15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 
    15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 
    15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 
    15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 
    15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 
    15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 
    15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 
    15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 
    15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 
    15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 
    15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 15.38, 
    15.38, 15.38, 15.38, 15.38, 15.38, 15.38), daily_unm_losses = c(10.3, 
    10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 
    10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 
    10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 
    10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 
    10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 
    10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 
    10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 
    10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 
    10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 
    10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 
    10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 
    10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 
    10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 
    10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 
    10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 
    10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 
    10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 
    10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 10.3, 
    10.3), total_m_use = c(41.38, 41.38, 41.38, 41.38, 41.38, 
    41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 
    41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 
    41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 
    41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 
    41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 
    41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 
    41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 
    41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 
    41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 
    41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 
    41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 
    41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 
    41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 
    41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 
    41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 
    41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 
    41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 
    41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 
    41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 41.38, 
    41.38, 41.38, 41.38, 41.38, 41.38, 41.38), cum_use = c(41.38, 
    82.76, 124.14, 165.52, 206.9, 248.28, 289.66, 41.38, 82.76, 
    124.14, 165.52, 206.9, 248.28, 289.66, 41.38, 82.76, 124.14, 
    165.52, 206.9, 248.28, 289.66, 41.38, 82.76, 124.14, 165.52, 
    206.9, 248.28, 289.66, 41.38, 82.76, 124.14, 165.52, 206.9, 
    248.28, 289.66, 41.38, 82.76, 124.14, 165.52, 206.9, 248.28, 
    289.66, 41.38, 82.76, 124.14, 165.52, 206.9, 248.28, 289.66, 
    41.38, 82.76, 124.14, 165.52, 206.9, 248.28, 289.66, 41.38, 
    82.76, 124.14, 165.52, 206.9, 248.28, 289.66, 41.38, 82.76, 
    124.14, 165.52, 206.9, 248.28, 289.66, 41.38, 82.76, 124.14, 
    165.52, 206.9, 248.28, 289.66, 41.38, 82.76, 124.14, 165.52, 
    206.9, 248.28, 289.66, 41.38, 82.76, 124.14, 165.52, 206.9, 
    248.28, 289.66, 41.38, 82.76, 124.14, 165.52, 206.9, 248.28, 
    289.66, 41.38, 82.76, 124.14, 165.52, 206.9, 248.28, 289.66, 
    41.38, 82.76, 124.14, 165.52, 206.9, 248.28, 289.66, 41.38, 
    82.76, 124.14, 165.52, 206.9, 248.28, 289.66, 41.38, 82.76, 
    124.14, 165.52, 206.9, 248.28, 289.66, 41.38, 82.76, 124.14, 
    165.52, 206.9, 248.28, 289.66, 41.38, 82.76, 124.14, 165.52, 
    206.9, 248.28, 289.66, 41.38, 82.76, 124.14, 165.52, 206.9, 
    248.28, 289.66, 41.38, 82.76, 124.14, 165.52, 206.9, 248.28, 
    289.66, 41.38, 82.76, 124.14, 165.52, 206.9, 248.28, 289.66, 
    41.38, 82.76, 124.14, 165.52, 206.9, 248.28, 289.66, 41.38, 
    82.76, 124.14, 165.52, 206.9, 248.28, 289.66, 41.38, 82.76, 
    124.14, 165.52, 206.9, 248.28, 289.66), kwh_at_r1 = c(41.38, 
    82.76, 124.14, 163.044615384615, 163.044615384615, 163.044615384615, 
    163.044615384615, 41.38, 82.76, 124.14, 163.044615384615, 
    163.044615384615, 163.044615384615, 163.044615384615, 41.38, 
    82.76, 124.14, 163.044615384615, 163.044615384615, 163.044615384615, 
    163.044615384615, 41.38, 82.76, 124.14, 163.044615384615, 
    163.044615384615, 163.044615384615, 163.044615384615, 41.38, 
    82.76, 124.14, 163.044615384615, 163.044615384615, 163.044615384615, 
    163.044615384615, 41.38, 82.76, 124.14, 163.044615384615, 
    163.044615384615, 163.044615384615, 163.044615384615, 41.38, 
    82.76, 124.14, 163.044615384615, 163.044615384615, 163.044615384615, 
    163.044615384615, 41.38, 82.76, 124.14, 163.044615384615, 
    163.044615384615, 163.044615384615, 163.044615384615, 41.38, 
    82.76, 124.14, 163.044615384615, 163.044615384615, 163.044615384615, 
    163.044615384615, 41.38, 82.76, 124.14, 163.044615384615, 
    163.044615384615, 163.044615384615, 163.044615384615, 41.38, 
    82.76, 124.14, 163.044615384615, 163.044615384615, 163.044615384615, 
    163.044615384615, 41.38, 82.76, 124.14, 163.044615384615, 
    163.044615384615, 163.044615384615, 163.044615384615, 41.38, 
    82.76, 124.14, 163.044615384615, 163.044615384615, 163.044615384615, 
    163.044615384615, 41.38, 82.76, 124.14, 163.044615384615, 
    163.044615384615, 163.044615384615, 163.044615384615, 41.38, 
    82.76, 124.14, 163.044615384615, 163.044615384615, 163.044615384615, 
    163.044615384615, 41.38, 82.76, 124.14, 163.044615384615, 
    163.044615384615, 163.044615384615, 163.044615384615, 41.38, 
    82.76, 124.14, 163.044615384615, 163.044615384615, 163.044615384615, 
    163.044615384615, 41.38, 82.76, 124.14, 163.044615384615, 
    163.044615384615, 163.044615384615, 163.044615384615, 41.38, 
    82.76, 124.14, 163.044615384615, 163.044615384615, 163.044615384615, 
    163.044615384615, 41.38, 82.76, 124.14, 163.044615384615, 
    163.044615384615, 163.044615384615, 163.044615384615, 41.38, 
    82.76, 124.14, 163.044615384615, 163.044615384615, 163.044615384615, 
    163.044615384615, 41.38, 82.76, 124.14, 163.044615384615, 
    163.044615384615, 163.044615384615, 163.044615384615, 41.38, 
    82.76, 124.14, 163.044615384615, 163.044615384615, 163.044615384615, 
    163.044615384615, 41.38, 82.76, 124.14, 163.044615384615, 
    163.044615384615, 163.044615384615, 163.044615384615, 41.38, 
    82.76, 124.14, 163.044615384615, 163.044615384615, 163.044615384615, 
    163.044615384615, 41.38, 82.76, 124.14, 163.044615384615, 
    163.044615384615, 163.044615384615, 163.044615384615)), row.names = c(NA, 
-182L), groups = structure(list(week = 1:26, .rows = list(1:7, 
    8:14, 15:21, 22:28, 29:35, 36:42, 43:49, 50:56, 57:63, 64:70, 
    71:77, 78:84, 85:91, 92:98, 99:105, 106:112, 113:119, 120:126, 
    127:133, 134:140, 141:147, 148:154, 155:161, 162:168, 169:175, 
    176:182)), row.names = c(NA, -26L), class = c("tbl_df", "tbl", 
"data.frame"), .drop = TRUE), class = c("grouped_df", "tbl_df", 
"tbl", "data.frame"))

Solution

  • model$kwh_at_r1 should be kwh_at_r1. The first refers to the ungrouped value and the second refers to the grouped value.'

    One other possible problem is that model shown in the dput output is already grouped and you may not have intended that.

    groups(model)  # model is formed from the dput output shown in the question
    ## [[1]]
    ## week
    

    That can be caused by not using ungroup after group_by. Furthermore, the code in the question also has no ungroup to close off the group_by.

    Although you often see code doing that it can result in unexpected output later and it is better to always use ungroup to close a group_by unless you really intended to produce a grouped object.