尝试从列表中的数据帧访问数据时返回NULL

时间:2014-01-21 17:20:11

标签: r list null dataframe

我正在尝试从列表中的轨道数据框创建两个纬度(变量纬度)和经度(变量离子)矢量。我正在使用readGPX函数访问我的Garmin 500中的数据。这是我的代码:

library(plotKML)

data <- readGPX("C:/Users/Ryan Caldwell/Documents/activity_273464208.gpx")

a <- data[4]
b <- a$lon
c <- a$lat

如果我要求输入数据字符,结果如下:

str(data)
List of 5
 $ metadata : NULL
 $ bounds   : NULL
 $ waypoints: NULL
 $ tracks   :List of 1
  ..$ :List of 1
  .. ..$ Untitled:'data.frame': 919 obs. of  5 variables:
  .. .. ..$ lon       : num [1:919] -87.5 -87.5 -87.5 -87.5 -87.5 ...
  .. .. ..$ lat       : num [1:919] 38 38 38 38 38 ...
  .. .. ..$ ele       : chr [1:919] "127.0" "127.0" "127.0" "127.0" ...
  .. .. ..$ time      : chr [1:919] "2013-02-14T13:47:02.000Z" "2013-02-14T13:47:06.000Z" "2013-02-14T13:47:11.000Z" "2013-02-14T13:47:16.000Z" ...
  .. .. ..$ extensions: chr [1:919] "16.010920" "16.011164" "16.011572" "16.01160" ...
 $ routes   : NULL

我得到的变量b的字符串的结果是:

str(b)
 NULL

为什么我得到Null作为答案?

1 个答案:

答案 0 :(得分:1)

a没有名为latlong的元素 - 它们被隐藏在tracks变量中。我认为以下内容应该有效:

b <- a$tracks[[1]][[1]]$lon
c <- a$tracks[[1]][[1]]$lat