R: как получить доступ к Tibble в Tibble?

Я читаю Хэдли: http://r4ds.had.co.nz/tibbles.html

Тем не менее, мне все еще трудно сослаться на тибле в тибле.

> library(tidyquant)
> f <- tq_get("F", get="key.ratios")
> f
# A tibble: 7 x 2
            section               data
              <chr>             <list>
1        Financials <tibble [150 x 5]>
2     Profitability <tibble [170 x 5]>
3            Growth <tibble [160 x 5]>
4         Cash Flow  <tibble [50 x 5]>
5  Financial Health <tibble [240 x 5]>
6 Efficiency Ratios  <tibble [80 x 5]>
7  Valuation Ratios  <tibble [40 x 5]>

> f["Financials"]
Error: Column `Financials` not found

> f[["Financials"]]
NULL

> f$Financials
NULL
Warning message:
Unknown or uninitialised column: 'Financials'. 

> f$data[[f$section == 'Financials']]
Error in f$data[[f$section == "Financials"]] : 
  attempt to select less than one element in integerOneIndex

> f$data[[1]]$Financials
NULL
Warning message:
Unknown or uninitialised column: 'Financials'. 

1 ответ

Решение

Из документации Tidyquant, используя tq_get(symbol, get = "key.ratios") возвращает вложенный тиббл Внутри столбца "Данные" таблицы содержатся другие таблицы со столбцами: раздел, подраздел, группа, категория и дата.

Первоначально вы пытались получить доступ к столбцу "Финансы" в главном фрейме данных, но такой столбец не существует (он содержит только "раздел" и "данные"). Вместо этого "Финансы" - это элемент (строка) столбца "раздел". Я думаю, что вместо этого вы хотите:

filter(f, section == "Financials") %>% unnest()
Другие вопросы по тегам