sas - sas中的欧几里得距离公式
问题描述
嗨,我想在 sas 中实现这个公式,我有 q1 和 p1 的值,它们是客户坐标,q2 和 p2 是商店坐标。通过使用这个公式,我想计算商店和客户之间的距离。
所以因为我用过这个
DATA D2.FINAL;
SET D2.final;
DIST = SQRT(((q1 - p1)*(q1 - p1))+((q2 - p2)*(q2 - p2)));
RUN;
我认为这可能不是正确的方法。
解决方案
使用GEODIST()内置函数
data _null_;
distance=geodist(30.68, -88.25, 35.43, -82.55, 'M');
put 'Distance = ' distance 'miles';
run;
SAS 将以下输出写入日志:
距离 = 465.29081088 英里
备选方案 1:如果您有每个位置的邮政编码,则使用zipcitydistance()函数。它不像纬度和经度那样具体,但很容易获得。
备选方案 2:如果您想要驾驶时间距离,此线程中的最后一篇文章说明了如何使用 Google API 获得它。您将需要一个 API 密钥,并且 Google 会每月提供一定数量的免费积分。如果您超出该金额,您将不得不支付。您必须输入信用卡,但您可以将其设置为不向您收费,除非您愿意。
推荐阅读
- ios - 通过 Firebase 函数发送的 Swift 中的加密推送通知
- django-templates - 未找到带有参数 '(' ',)' 的 'files' 的修订版。尝试了 1 种模式:
- ssl - 如何禁用 ssl 证书并仅用于转发 Nginx 中端口 443 上的流量?
- visual-studio - 无法从云端打开 Web 应用程序
- java - 杰克逊 - 接受对象属性上的空字符串
- arrays - 如何通过迭代在字典键值中使用 switch case
- google-apps-script - 正确编写 onEdit
- c++ - 模板专业化不匹配错误
- java - 如何通过单个命令为文件夹中的所有 thrift 文件生成所有类?
- django - 在 Django 中使用 PostgreSQL 聚合表达式