小编Opt*_*ime的帖子

如何使用 R 对于大型数据集有效地检查点是否在多边形中?

我是 R 新手,对于我当前的项目,我必须绘制与特定事件相关的热图。此类事件大约有 200 万个观测值,每个观测值都有一个长坐标和纬度坐标。另外,我将地图数据转换为数据框,该数据框包含71个区,每个区都定义有一组坐标。我需要决定事件的哪个观察属于哪个区。我正在使用以下代码:

for (row in 1:nrow(data2015)){
  point.x=data2015[row,"Latitude"]
  point.y=data2015[row,"Longitude"]
  for (name in names(polygonOfdis)){
    if (point.in.polygon(point.x, point.y, polygonOfdis[[name]]$lat,   polygonOfdis[[name]]$long, mode.checked=FALSE)){
    count[[name]]<-count[[name]]+1
    break
}
}
}
Run Code Online (Sandbox Code Playgroud)

data2015是事件的数据集,polygonOfdis是各区的数据集。

对于小数据集,这个算法还可以,但是对于我的数据集,它肯定会运行十几个小时甚至更多(对于只有当前大小的1/400的数据集,这个算法运行1到2分钟)。我想知道是否有更好的方法来找出哪个观察属于哪个区?我的问题是 point.in.polygon 函数花费太多时间,我想知道是否有其他函数可以做到这一点?

PS:当前的数据实际上只是我必须处理的真实数据的1/10,所以我真的需要一种更快的方法来做到这一点。

r polygon ggplot2

4
推荐指数
1
解决办法
9991
查看次数

hashtable和hashmap有什么区别?(不是特定于Java)

在我最近的一次软件工程师职位面试中,我被问到这样的问题:hashtable和hashmap之间有什么区别?我问面试官他是否具体是Java,因为在Java哈希表中是同步的,而hashmap不是(实际上谷歌搜索后的哈希表与哈希地图的比较大量的信息,所以这不是我要找的答案)但是他说没有和我想让我解释一下这两者的区别.

关于这个问题,我真的感到困惑和震惊(现在仍然感到困惑).IMO,hastable或hashmap只是一个术语问题.实际上只有Java既有术语又有其他语言如C++,它们甚至没有术语哈希表.在访谈中,我刚刚解释了哈希的原理,并说哈希图和哈希表都应该基于这个原则来实现,我不知道这两者之间是否有任何区别.面试官肯定不相信并且正在寻找其他答案,当然我在那一轮之后被拒绝了.

那么回到主题,如果有的话,一般(不是特定于Java)的hashmap和hashtable之间的区别可能是什么?

hashtable hashmap

3
推荐指数
1
解决办法
3427
查看次数

如何使用R基于某些数据绘制纽约市社区的热图?

对于我目前正在进行的项目,我必须根据使用R的某些输入绘制纽约市社区的热图.我用Google搜索了这个主题并发现在R中,有一个名为"map"的包将允许你很容易画出美国各州的热图.但是,我不知道如何为一个城市绘制类似的热图,特别是在这里,纽约市?任何建议都非常感谢.

plot dictionary r colors

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

标签 统计

r ×2

colors ×1

dictionary ×1

ggplot2 ×1

hashmap ×1

hashtable ×1

plot ×1

polygon ×1