我有一个数据框,其中包含运输系统上的wifi下载带宽和GPS数据(经度和纬度)。我想根据数据确定车辆向北行驶时的平均带宽,以及向南行驶时的平均带宽。基于for循环向R向量添加值
(来自DF带宽和纬度值)
bandwidth <- df$bandwidth
latitude <-df$latitude
(这些都具有2800个条目)
(创建空载体,以填补取决于车辆是否正在移动北或南带宽值)
movingnorth <- vector('numeric')
movingsouth <- vector('numeric')
(如果列车是向北移动,填充从带宽矢量数据移动北矢量)
for(y in latitude){
if(latitude[y]>= latitude[y+1]){
movingnorth <- c(movingnorth, received[y])}
}
在这里,我基本上是说如果纬度值上升,那么车辆向北移动,因此输入从那个位置到移动矢量的带宽值。我期望只有带宽矢量的一部分值被添加到movenorth矢量,但所有2800值都被添加。我在这里做错了什么?
您可能想要使用'for(y in seq_along(latitude))'或'for(y in 1:length(latitude))'。 – lmo
这工作,非常感谢你。为什么我的原始方法不起作用? – Brad
你不是说如果当前位置高于下一个位置,它就会向南行进? – sweetmusicality