Я понимаю, что мой титул, возможно, немного сбивает с толку. У меня есть JSON, который немного сбивает с толку unnest
. Я пытаюсь использовать Tidyverse.
Пример данных
df <- structure(list(long_abbr = c("Team11", "BBS"), short_name = c("Ac ",
"BK"), division = c("", ""), name = c("AC Slaters Muscles", "Broken Bats"
), abbr = c("T1", "T1"), owners = list(structure(list(commissioner = 0L,
name = "Chris Liss", id = "300144F8-79F4-11EA-8F25-9AE405472731"), class = "data.frame", row.names = 1L),
structure(list(commissioner = 1L, name = "Mark Ortin", id = "90849EF6-7427-11EA-95AA-4EEEAC7F8CD2"), class = "data.frame", row.names = 1L)),
id = c("1", "2"), logged_in_team = c(NA_integer_, NA_integer_
)), row.names = 1:2, class = "data.frame")
)
# Unnest Owners Information
df <- df %>%
unnest(owners)
Я получаю следующую ошибку, так как у меня есть дубликаты столбцов, которые используют name
.
Error: Column names `name` and `id` must not be duplicated.
Существует ли простой способ развернуть столбцы с помощью соглашения об именах, которое принимает префикс owners
(или в моем случае я бы хотел, чтобы оно принимало любое имя столбца, в котором хранится вложенный df
есть) перед вложенными столбцами. IE owners.commissioner
, owners.name
, owners.id
. Я также был бы заинтересован в решениях, которые используют случай верблюда и подчеркивание. IE ownersName
или owners_name
.