SAS - 通过 RDI 分析“欺诈”帐户/路由号码(空头支票)

Posted

技术标签:

【中文标题】SAS - 通过 RDI 分析“欺诈”帐户/路由号码(空头支票)【英文标题】:SAS - Analysis on 'Fraud' Account/Routing numbers via RDIs (bad checks) 【发布时间】:2020-03-03 02:27:33 【问题描述】:

所以我是 SAS 和商业世界的新手,我正在做的一项任务很糟糕。

简介:我有一个数据集 RDI_HIST,它显示了大约 6 个月内按帐户/路由# 显示的所有 RDI。数据集中有约 250,000 笔交易,其中一些是同一客户(相同的帐户/路由#)。

我被告知要对这些数据进行分析,但首先我不确定我是否对其进行了排序/分组(见表格)。

+------------------+-------------+------------+-----------+-------+
| RDI_RT_TRAN_CODE | RDI_ACCT_NO | RDI_AMOUNT | RDI_TOTAL | COUNT |
+------------------+-------------+------------+-----------+-------+
|              518 |           0 | 3117.00    | 3777.5    |     3 |
|              518 |           0 | 170.00     | 3777.5    |     3 |
|              518 |           0 | 490.50     | 3777.5    |     3 |
|         26013673 |           0 | 755.63     | 755.63    |     1 |
|         31100225 |           0 | 31.40      | 31.4      |     1 |
|         41001039 |           0 | 143.10     | 143.1     |     1 |
|         41202443 |           0 | 32.38      | 32.38     |     1 |
|         41203824 |           0 | 63.31      | 63.31     |     1 |
|         41207341 |           0 | 43.00      | 375.87    |     4 |
|         41207341 |           0 | 184.87     | 375.87    |     4 |
|         41207341 |           0 | 15.00      | 375.87    |     4 |
|         41207341 |           0 | 133.00     | 375.87    |     4 |
|         41208719 |           0 | 247.57     | 247.57    |     1 |
|         41215621 |           0 | 220.00     | 630       |     4 |
|         41215621 |           0 | 250.00     | 630       |     4 |
|         41215621 |           0 | 60.00      | 630       |     4 |
|         41215621 |           0 | 100.00     | 630       |     4 |
|         43301601 |           0 | 1999.70    | 2407.16   |     3 |
|         43301601 |           0 | 330.18     | 2407.16   |     3 |
|         43301601 |           0 | 77.28      | 2407.16   |     3 |
|         43306910 |           0 | 1200.00    | 1200      |     1 |
|         43313259 |           0 | 1312.65    | 9852.52   |     6 |
|         43313259 |           0 | 1352.37    | 9852.52   |     6 |
|         43313259 |           0 | 2939.98    | 9852.52   |     6 |
|         43313259 |           0 | 1500.00    | 9852.52   |     6 |
|         43313259 |           0 | 1309.10    | 9852.52   |     6 |
|         43313259 |           0 | 1438.42    | 9852.52   |     6 |
|         44103976 |           0 | 126.00     | 126       |     1 |
+------------------+-------------+------------+-----------+-------+

对于分析,我真的不知道从哪里开始。主要目标是创建一段代码来吸引拥有多个 RDI(错误检查)的客户,并每周将他们添加到黑名单中。该列表的参数是什么,我还不确定,所以我只是想提出一些不错的统计数据。

如果有人能提供一些帮助,我一定会付清的。我会在这里回答任何问题。谢谢。

【问题讨论】:

【参考方案1】:

从蛮力开始。首先获取 RDI 的分布,然后设计一个截止值。

假设您的数据被称为 have 并且变量名称如图所示,那么类似下面的内容很有用。

proc freq data=have noprint;
table rdi_account_no / out=rdi_counts;
run;

proc rank data=rdi_counts groups=100 out=rdi_counts_ranked;
var count;
ranks rank_count;
run;

proc freq data=rdi_counts_ranked;
table rank_count;
run;

您需要检查最后一个 proc freq 的分布,它本质上是帐户数的分布。即,如果您查看第 90 个百分位,它会告诉您有多少帐户属于该组。您还可以查看 PROC UNIVARIATE 中的 CDF。

proc univariate data=rdi_counts_ranked;
histogram rank_count;
cdf rank_count;
run; 

【讨论】:

谢谢。真的很感激。【参考方案2】:

你可以从 proc 方法开始。 假设 RDI_ACCT_NO 是您可以按此分组的客户 ID:

proc means data=RDI_HIST;
var RDI_RT_TRAN_CODE RDI_AMOUNT RDI_TOTAL;
by RDI_ACCT_NO;
run;

这将根据您的客户 ID 快速为您提供所选变量的汇总统计信息。

另外,我强烈建议您查看 SAS 支持社区。 *** 很棒,但 SAS 有一个庞大的程序员社区也准备帮助 SAS 人。

【讨论】:

同意,尤其是当您不是真正提出技术问题但需要更多在 *** 上无效的方法或方向时。 感谢您的帮助和建议。

以上是关于SAS - 通过 RDI 分析“欺诈”帐户/路由号码(空头支票)的主要内容,如果未能解决你的问题,请参考以下文章

Azure 存储帐户:Blob 服务 (SAS) 连接检查失败

Azure 存储帐户生成 SAS 令牌,而不是 SAS URI

使用 PowerShell 生成 Azure 存储帐户 SAS 密钥

Azure 存储帐户 - 使用容器 SAS 的临时下载链接

仅将Firebase分析重新路由到另一个帐户

Blob 存储帐户的 Azure SAS 令牌不起作用