googledrive unnest возвращает ошибку неиспользованного аргумента - PullRequest
0 голосов
/ 15 января 2020

Я использую googledrive , чтобы получить информацию о списке файлов на общем диске, и хотел бы unnest(drive_resource) в столбцы для изучения данных.

Когда я сделать так, я получаю ошибку. Похоже, что-то о классе вложенного списка, который я пытаюсь развернуть как столбцы. Есть предложения?

library(dplyr)
library(tidyr)
library(googlesheets)

df <- drive_find(team_drive = "my_team_drive") 
unnest(df, drive_resource)

Error in as_tibble.dribble(output, .name_repair = "minimal") : 
  unused argument (.name_repair = "minimal")

1 Ответ

0 голосов
/ 15 января 2020

Оказывается, есть ошибка в dev для проблемы .name_repair.

Ниже приведено быстрое и грязное решение, улучшения приветствуются.

df2 <- df %>%
  map_dfr(
    .x = .$drive_resource,
    .f = ~ unlist(.x) %>% enframe() %>% spread(name, value)
  ) %>%
  bind_cols(select(df, name:id))

Если вам нужен только верхний уровень этого объекта списка, приведенное ниже проще. Особенно хорошо для командных дисков с большим количеством пользователей, поскольку список ID-адресов превращается в столько столбцов, сколько у вас есть пользователей. Просто вызовите unnest_wider() для каждого из (родителей, пробелов, lastModifyingUser, возможностей, allowIds, exportLinks, imageMediaMetadata, videoMediaMetadata), для которых вы хотите просмотреть информацию.

Ниже любезно предоставлено @ JennyBryan

df2 <- df %>%
  select(drive_resource) %>%
  unnest_wider(drive_resource)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...