我找到了用于查找所需信息的函数,但矩阵太大。
我有一个餐厅数据集,我想使用经度和纬度来确定餐厅是否彼此相邻。我一直在使用distHaversine函数,该函数可以测量距离并与较小的子集完美配合:
rest_m <- cbind(restaurants$longitude, restaurants$latitude)
distance_m <- distm(rest_m, rest_m, fun = distHaversine)
唯一的问题是数据集有5.5万行,矩阵太大而无法使用。
我现在正在考虑减少餐馆列表,并仅针对同一州的企业计算距离。数据集中有一个State列。 是否只有在满足此条件(餐厅处于相同状态)时才可以创建矩阵?
谢谢!
rest_m <- cbind(restaurants$longitude, restaurants$latitude)
distance_m <- distm(rest_m, rest_m, fun = distHaversine)
答案 0 :(得分:-1)
因为您只需要查找附近的餐馆即可。您最好在具有欧几里德距离的经度和纬度列上使用类似k-means的聚类(然后,同一聚类中的饭店会彼此接近)。对于您的问题陈述,使用distHaversine会显得过分。