2016-07-28 121 views
0

我有我正在導入數據JSON數據到數據幀中的R

myList = rjson::fromJSON(file = "JsData.json") 
myList 


[[1]] 
[[1]]$key 
[1] "type1|new york, ny|NYC|hit" 
[[1]]$doc_count 
[1] 12 

[[2]] 
[[2]]$key 
[2] "type1|omaha, ne|Omaha|hit" 
[[2]]$doc_count 
[2] 8 

但json文件,當我試圖轉換到通過以下功能的數據幀,
do.call(rbind, lapply(myList, data.frame))

我正在一個error.-
Error in (function (..., row.names = NULL, check.rows = FALSE, check.names = TRUE, : arguments imply differing number of rows: 1, 0


我需要解析這些數據,以便它可以被用來在excel csv中。我查看了Getting imported json data into a data frame in R
的解決方案,但在excel中輸出的格式不正確。

而且JsData.json樣本數據是這樣的:

[{"key":"type1|new york, ny|NYC|hit","doc_count":12}, {"key":"type1|omaha, ne|Omaha|hit","doc_count":8}, {"key":"type2|yuba city, ca|Yuba|hit","doc_count":9}]

回答

1

你可以試試:

require(jsonlite) 
s ='[{"key":"type1|new york, ny|NYC|hit","doc_count":12}, 
     ....... 
     "key":"type2|yuba city, ca|Yuba|hit","doc_count":9}]' 

df <- fromJSON(s) 
df 

          key doc_count 
1 type1|new york, ny|NYC|hit  12 
2 type1|omaha, ne|Omaha|hit   8 
3 type2|yuba city, ca|Yuba|hit   9 

我不知道你想怎麼處理wiyh你的關鍵.. ...

+0

我正在從JSON文件中讀取它。我發佈的數據是該文件的示例數據。因此,我明確地調用fromJSON函數,否則與您的建議方法,我得到了錯誤
參數「txt」丟失,沒有默認
關鍵列有管道分隔的數據,我將轉換到Excel中的不同列 – Joe

+0

您能否更新你有問題的部分的例子嗎? – tokiloutok

+0

這是我得到錯誤的確切的一個。
myList = rjson :: fromJSON(file = JSON file path)
do.call(rbind,lapply(myList,data.frame))
這是給出上述問題中提到的錯誤 – Joe