小编jua*_*lix的帖子

使用R中的distm()计算数据帧中两个GPS位置之间的距离

这个问题以前被问过,但从来没有用以下数据排列。下面是它的一个示例:

> head(datagps)
   Date & Time [Local]  Latitude Longitude
1: 2018-06-18 03:01:00 -2.434901  34.85359
2: 2018-06-18 03:06:00 -2.434598  34.85387
3: 2018-06-18 03:08:00 -2.434726  34.85382
4: 2018-06-18 03:12:00 -2.434816  34.85371
5: 2018-06-18 03:16:00 -2.434613  34.85372
6: 2018-06-18 03:20:00 -2.434511  34.85376
Run Code Online (Sandbox Code Playgroud)

如您所见,我有一Date & Time [Local]列平均每 4 分钟记录一次 GPS 位置。我想计算两个连续记录之间的距离(以米为单位)并将此度量存储在新列中Step。我一直在尝试distm()对我的数据实施:

> datagps$Step<-distm(c(datagps$Longitude, datagps$Latitude), c(datagps$Longitude+1, datagps$Latitude+1), fun = distHaversine)
Error in .pointsToMatrix(x) : Wrong length for a vector, should be 2
Run Code Online (Sandbox Code Playgroud)

尽管我不确定语法以及这是否是填充函数参数的正确方法。我对 R 很陌生,所以我希望能得到一些帮助。

任何输入表示赞赏!

r geosphere

6
推荐指数
1
解决办法
1025
查看次数

使用树函数时“强制引入的 NA”错误

我一直在使用 KNN 算法对事件进行分类,但这并没有导致分类的高精度。一些同事告诉我tree (),R中的函数(来自tree包)可以帮助解决这个问题。

这是我的数据示例。我正在尝试根据前两列的值对不同的事件(我有 8 类不同的事件)进行分类,"ACTIVITY_X"并且"ACTIVITY_Y"

> print(dataset)
     ACTIVITY_X ACTIVITY_Y     Event
  1:         19         21 Vigilance
  2:         20         14 Vigilance
  3:         34         35 Vigilance
  4:         18          5 Vigilance
  5:         23         27 Vigilance
 ---                                
426:          9         25 Vigilance
427:          0          0   Head-up
428:          0          0   Head-up
429:          3          3   Head-up
430:          0          0 Vigilance
Run Code Online (Sandbox Code Playgroud)

理想情况下,我想找到不同类别(抬头,警戒等。),这应该帮助他们进行分类时之间不同的阈值"Event"的数据不可用,我只有"ACTIVITY_X""ACTIVITY_Y"数据。我想我应该使用该tree()函数:

xtree <- tree(Head-up~ACTIVITY_X+ACTIVITY_Y,data=dataset)
plot(xtree)
title("Head_up")
text(xtree)

xtree <- tree(Vigilance~ACTIVITY_X+ACTIVITY_Y,data=dataset)
plot(xtree) …
Run Code Online (Sandbox Code Playgroud)

tree r machine-learning

0
推荐指数
1
解决办法
5467
查看次数

标签 统计

r ×2

geosphere ×1

machine-learning ×1

tree ×1