があり、list
各リスト要素内のフィールドは同じ名前であり(値のみが異なります)、data.frame
それをフィールド名と同じ列名を持つに変換する必要があります。以下は私のリストです、
データ入力(json format.jsonでのデータ入力)
library(rjson)
data <- fromJSON(file = "data input in json format.json")
head(data,3)
[[1]]
[[1]]$floors
[1] 5
[[1]]$elevation
[1] 15
[[1]]$bmi
[1] 23.7483
[[2]]
[[2]]$floors
[1] 4
[[2]]$elevation
[1] 12
[[2]]$bmi
[1] 23.764
[[3]]
[[3]]$floors
[1] 3
[[3]]$elevation
[1] 9
[[3]]$bmi
[1] 23.7797
そして、私の期待data.frame
は、
floors elevation bmi
5 15 23.7483
4 12 23.7640
3 9 23.7797
これを理解するのを手伝ってくれませんか。よろしくお願いします。
を使用できますjsonlite
。
library(jsonlite)
次にfromJSON()
、引数でファイルへのパス(またはURLまたは生のテキスト)を使用して指定しますtxt
。
fromJSON(txt = 'path/to/json/file.json')
結果は次のとおりです。
floors elevation bmi
1 5 15 23.7483
2 4 12 23.7640
3 3 9 23.7797
rjsonを好む場合は、最初に以前のように読むことができます。
data <- rjson::fromJSON(file = 'path/to/json/file.json')
次に、do.call()
とrbind.data.frame()
を使用してリストをデータフレームに変換します。
do.call("rbind.data.frame", data)
代わりにdo.call()
:より速いdata.table
srbindlist()
を使用してください:
data.table::rbindlist(data)
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加