0

都市名とそれに対応する標高を抽出したい長いjsonファイルがあります。結果は、列 A が都市名、列 B が標高を保持するリストになります。

ここにRのデータがあります:

l <- fromJSON('[{"_id": "CtNjHGG8asEvFyqsM","cronjobname": "Elev","cronjobid": "mmsibiZL4p42fL8jh",
"cronjobtyp": "importTestData","datasource": "importTestData","data": [{
 "Station": "New York","Elev":    300},{ "Station": "London","Elev":    35}],
"createdAt": "2016-04-30T22:10:11.342Z","createdBy": null,"modifiedAt": "2016-04-30T22:10:11.342Z","modifiedBy": null}]')

そして、それが私が思いついたものです:

m <- lapply(
  l[[1]]$data, 
  function(x) c(x$Station['Station'], x$Elev['Elev'])
)
m <- do.call(rbind, m)

しかし、これが完全ではなくl[[1]]$data[[1]]$Station、駅にアクセスする必要があることはわかっていますが、[[x]]$Station残念ながら単純に使用することはできません。何が欠けていますか、または複数にアクセスするためにこれをループに入れる必要がありますxか?

4

1 に答える 1

2

それはあなたが望むものですか?

  m<-lapply(
        l[[1]]$data, 
        function(x) c(x$Station, x$Elev)
  )
  m <- do.call(rbind, m)
  > m
  [,1]       [,2] 
  [1,] "New York" "300"
  [2,] "London"   "35" 

または、これを使用できます:

  m <- do.call(rbind, l[[1]]$data)
  > m
  Station    Elev
  [1,] "New York" 300 
  [2,] "London"   35  

so there is nothing にx$Station['Station'] 相当するステートメント。l[[1]]$data[[1]]$Station['Station']

于 2016-05-10T13:27:39.687 に答える