pivot_wider command generates a list() instead of a "wider" data.frame in R

Add an id column and things get easier:

df %>%
  group_by(season) %>%
  mutate(id = row_number()) %>%
  pivot_wider(names_from = season, values_from = corr, id_cols = id)
# # A tibble: 28 × 3
#       id    wet    dry
#    <int>  <dbl>  <dbl>
#  1     1  0.747  0.747
#  2     2  0.747  0.747
#  3     3 -0.747 -0.747
#  4     4  0.711  0.711
#  5     5 -0.673 -0.673
#  6     6 -0.627 -0.627
#  7     7  0.721  0.721
#  8     8  0.747 -0.570
#  9     9  0.747 -0.722
# 10    10 -0.747  0.609
# # … with 18 more rows