2014-12-13 7 views
0

У меня есть данные json в следующем формате.Parsing Json to Data frame в R

{"abc": "37512", "def": "93145", "ghi": "14160", "jkl": "510842"} 

Мне нужно загрузить его в сеансе R в качестве кадра данных.

col1 col2 
abc 37512 
def 93145 
ghi 14160 
jkl 510842 

Я попытался разобрать json, используя rsjon. Вот мой код:

library("rjson") 

json_file <- 'finaldata.json' 
data <- fromJSON(file=json_file) 
data 
$abc 
[1] "37512" 

$def 
[1] "93145" 

$ghi 
[1] "14160" 

$jkl 
[1] "510842" 

Это дает мне вывод как список. Как получить желаемый результат в виде фрейма данных.

ответ

2

Вы можете использовать stack из base R

stack(data) 
# values ind 
#1 37512 abc 
#2 93145 def 
#3 14160 ghi 
#4 510842 jkl 

или melt из reshape2

library(reshape2) 
melt(data) 

и изменить имена столбцов

setNames(melt(data)[,2:1], paste0('col', 1:2)) 
# col1 col2 
#1 abc 37512 
#2 def 93145 
#3 ghi 14160 
#4 jkl 510842