我正在查看大部分时间都在水下的设备的数据。当它浮出水面时,它会获得GPS定位(lat& lon),然后下沉(失去其GPS定位)并继续收集数据,直到下一次出现。这导致lat lon值的数据中存在大量NA值,并且它们与水下数据读数不一致。
我想创建一个数据的幕布图,但是我需要一些插值的lat / lon值来对3D地图进行地下数据的粗略绘制。
如何为R中的GPS定位之间出现的许多NA填写一些线性插值?它们采用数字DD.DDDDD格式。
可在以下网址找到数据示例:http://modata.ceoe.udel.edu/public/gps_example_data.csv
答案 0 :(得分:4)
na.approx()
可以满足您的需求。
根据您的数据,执行以下操作:
zoo
另请参阅this StackOverflow post,其中包含一个很好的工作示例(以及来自df <- read.csv("http://modata.ceoe.udel.edu/public/gps_example_data.csv",
header=T)
library(zoo)
df2 <-
transform(df,
m_gps_lat_dec = na.approx(m_gps_lat_dec, m_present_time, na.rm=FALSE),
m_gps_lon_dec = na.approx(m_gps_lon_dec, m_present_time, na.rm=FALSE))
包的作者的一些有用的注释)。