Измените значения фрейма данных на имена столбцов и присвойте им значение

У меня небольшая проблема. Я хочу, чтобы «2019» и «2020» были именами моих столбцов, а их значения соответствовали значениям «счетчика» и удаляли повторяющиеся имена. Это выглядит так:

# A tibble: 6 x 3
# Groups:   Full.Name [3]
  Full.Name             year counter
  <chr>                <dbl>   <int>
1 A. Patrick Beharelle  2019    5541
2 A. Patrick Beharelle  2020    3269
3 Aaron P. Graft        2019     165
4 Aaron P. Graft        2020     200
5 Aaron P. Jagdfeld     2019       4
6 Aaron P. Jagdfeld     2020       5

И я хочу, чтобы это выглядело так:

# A tibble: 6 x 3
# Groups:   Full.Name [3]
  Full.Name             2019    2020
  <chr>                <int>   <int>
1 A. Patrick Beharelle  5541    3269
2 Aaron P. Graft         165     200
3 Aaron P. Jagdfeld        4       5

Я знаю, что числа в качестве имени столбца не очень умны, так что это только для демонстрации того, что я хочу заархивировать. Я не знаю, какой правильный термин для этого перехода, поэтому понятия не имею, что искать. Может быть, кто-нибудь поможет мне заархивировать это преобразование. Заранее спасибо!

использовать pivot_wider: pivot_wider(df, names_from = year, values_from = counter)

Maël 17.05.2022 12:01
Формы c голосовым вводом в React с помощью Speechly
Формы c голосовым вводом в React с помощью Speechly
Пытались ли вы когда-нибудь заполнить веб-форму в области электронной коммерции, которая требует много кликов и выбора? Вас попросят заполнить дату,...
Стилизация и валидация html-формы без использования JavaScript (только HTML/CSS)
Стилизация и валидация html-формы без использования JavaScript (только HTML/CSS)
Будучи разработчиком веб-приложений, легко впасть в заблуждение, считая, что приложение без JavaScript не имеет права на жизнь. Нам становится удобно...
Flatpickr: простой модуль календаря для вашего приложения на React
Flatpickr: простой модуль календаря для вашего приложения на React
Если вы ищете пакет для быстрой интеграции календаря с выбором даты в ваше приложения, то библиотека Flatpickr отлично справится с этой задачей....
В чем разница между Promise и Observable?
В чем разница между Promise и Observable?
Разберитесь в этом вопросе, и вы значительно повысите уровень своей компетенции.
Что такое cURL в PHP? Встроенные функции и пример GET запроса
Что такое cURL в PHP? Встроенные функции и пример GET запроса
Клиент для URL-адресов, cURL, позволяет взаимодействовать с множеством различных серверов по множеству различных протоколов с синтаксисом URL.
Четыре эффективных способа центрирования блочных элементов в CSS
Четыре эффективных способа центрирования блочных элементов в CSS
У каждого из нас бывали случаи, когда нам нужно отцентрировать блочный элемент, но мы не знаем, как это сделать. Даже если мы реализуем какой-то...
0
1
16
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Это классический решейпинг пошире - его можно сделать разными способами, один из которых pivot_wider() из tidyr:

library(tidyr)

data |> pivot_wider(names_from = year, values_from = counter)

Выход:

#> # A tibble: 3 x 3
#>   Full.Name              `2019` `2020`
#>   <chr>                   <dbl>  <dbl>
#> 1 "A. Patrick Beharelle"   5541   3269
#> 2 "Aaron P. Graft      "    165    200
#> 3 "Aaron P. Jagdfeld   "      4      5

Created on 2022-05-17 by the reprex package (v2.0.1)

Более подробная информация об изменении наборов данных с помощью tidyr находится здесь: https://tidyr.tidyverse.org/articles/pivot.html.

Другие вопросы по теме