web-dev-qa-db-ja.com

JsonをRのデータフレームに変換するにはどうすればよいですか?

JsonデータをRのデータフレームに変換したいと思います。これまでに行ったことは次のとおりです。

library("rjson")
result <- fromJSON(file ="mypath/data.json")
json_data_frame <- as.data.frame(result)

ただし、次のようなエラーが発生します。

Data.frame(company_id = "12345678"、country_name = "China" 、:引数のエラーは行数が異なることを意味します:1、2、0

次のコードも試しました。

library("rjson")
result <- fromJSON(file ="mypath/data.json")
final_data <- do.call(rbind, result)

そして、このエラーが発生します:

警告メッセージ:In(function(。。。、deparse.level = 1):結果の列数がベクトル長の倍数ではありません(arg 3)

ここで何が起こっているのか、どうすれば解決できるのかわかりません。これについて助けをいただければ幸いです。

これが私のjsonデータの一部です:

{"business_id": "1234567"、 "Country_name": "China"、 "hours":{"Monday":{"close": "02:00"、 "open": "11:00"}、 "Tuesday ":{" close ":" 02:00 "、" open ":" 11:00 "}、" Friday ":{" close ":" 02:00 "、" open ":" 11:00 "}、 "Wednesday":{"close": "02:00"、 "open": "11:00"}、 "Thursday":{"close": "02:00"、 "open": "11:00" }、 "Sunday":{"close": "02:00"、 "open": "12:00"}、 "Saturday":{"close": "02:00"、 "open": "12: 00 "}}、" open ":true、" category ":[" Bars "、" Nightlife "、" Restaurants "]、" city ":" Beijing "、" review_count ":5、" name ":" Chen's Bar "、"近所 ":["ウエストエンド "]、"属性 ":{"テイクアウト ":true、" Wi-Fi ":"無料 "、"お勧め ":{"デザート ":false、"深夜":false、"昼食 ":false、"夕食 ":false、"朝食 ":false、"ブランチ ":false}、"ダンスに最適 ":false、"ノイズレベル ":"大声で "、"予約を取ります " :false、 "Delivery":false、 "Ambience":{"romantic":false、 "intimate":false、 "classy":false、 "hipster":false、 "divey":false、 "touristy":false、 "trendy":false、 "upscale":false、 "casual":false}、 「ハッピーアワー」:true、「駐車場」:{「ガレージ」:false、「ストリート」:false、「検証済み」:false、「ロット」:false、「係員」:false}、「テレビあり」:true、 「屋外席」:false、「服装」:「カジュアル」、「アルコール」:「full_bar」、「ウェイターサービス」:true、「クレジットカードを受け入れる」:true、「子供向け」:false、「グループ向け」 ":true、" Caters ":true、" Price Range ":1}、" type ":" business "}

6
Ping Yi Hsu

Jsonliteライブラリを使用してみてください。それは私のために働く

fromJSON(temp) %>% as.data.frame

以下が出力されます enter image description here

リストが必要な場合。

fromJSON(temp) 
10
Kush Patel

Jsonliteパッケージをロードします

library(jsonlite)

wine_jsonはJSONです

wine_json <- '{"name":"Chateau Migraine", "year":1997, "alcohol_pct":12.4, "color":"red", "awarded":false}'

Wine_jsonをリストに変換します。

wine <- fromJSON(wine_json)

ワインのプリント構造

str(wine)
1
Adarsh Pawar