2015-10-07 2 views
0

Я импортировал данные из файла .json в R через jsonlite. К сожалению, данные отображаются как «Список 1», хотя он содержит несколько категорий.Извлечение элементов из проанализированного jsonlite списка в R

library(jsonlite) 
wimbledon <- from JSON("wimbledon.json",flatten=TRUE) 

я получаю следующее, когда я открываю Уимблдон в глобальной среде:

wimbledon      List of 1 
graph_data: 'data.frame': 1 obs. of 2 variables: 
..$ term:chr "wimbledon" 
..$data: List of 1 
.. ..$: 'data.frame': 165 obs. of 3 variables: 
.. .. ..$ matches : int [1:165] 0 0 0 0 0 0 0 0 ... 
.. .. ..$ year : int [1:165] 1851 1852 1853 1854 ... 

Мой вопрос, есть ли простой способ ссылаться только на $ матчи и $ год, как я бы сделал в кадр данных с использованием wimbledon $ matches и wimbledon $ year? Я ознакомлен с использованием wimbledon [[n]] для извлечения определенного элемента списка. Однако проблема здесь в том, что я, кажется, разобрал все в один список в jsonlite. Извиняется, что я не могу добавить воспроизводимый пример. Любая помощь, которую вы можете дать мне при извлечении столбцов «match» и «year» в качестве отдельных столбцов фрейма данных, будет с благодарностью оценена.

+1

Попробуйте 'wimbledon $ graph_data $ data [[1]] $ matches'. Структура данных интересна - я не могу воссоздать data.frame с одной строкой ('graph_data'), где второй столбец является списком, я не думал, что это разрешено. – mattdevlin

+0

@mattdevlin Огромное спасибо! Это сработало отлично. Да, я тоже смутился о структуре, но как-то это кажется возможным. Пожалуйста, добавьте свой комментарий в качестве ответа, и я буду принимать – RichS

ответ

1

Если в списке есть неназванные значения, например. $: 'data.frame': 165 obs. of 3 variables:, синтаксис var[[n]] необходим так

wimbledon$graph_data$data[[1]]$matches 

и

wimbledon$graph_data$data[[1]]$year 

возвратит спички и годы.

+0

Спасибо большое! Богатые – RichS

Смежные вопросы