R语言侦测欺诈交易.doc

R语言侦测欺诈交易.doc

ID:57306734

大小:83.50 KB

页数:8页

时间:2020-08-11

R语言侦测欺诈交易.doc_第1页
R语言侦测欺诈交易.doc_第2页
R语言侦测欺诈交易.doc_第3页
R语言侦测欺诈交易.doc_第4页
R语言侦测欺诈交易.doc_第5页
资源描述:

《R语言侦测欺诈交易.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、R语言侦测欺诈交易背景考虑到在经济和社会领域中经常存在欺诈交易等非法活动,因此欺诈检验是数据挖掘技术的一个重要应用领域。从数据分析的角度,欺诈行为通常和异常的观测值相关联,因为这些欺诈行为是偏离常规的。在多个数据分析领域,这些偏离常规的行为经常成为离群值。数据挖掘的结果有助于公司的事后检查活动,能够提供某种欺诈概率排序作为输出结果,可以使公司以最佳方式来利用其事后检查资源。目的侦测欺诈交易的目的是找到“奇怪的”交易记录报告,它可能指出某些销售员涉嫌欺诈。这里用的数据是一个较短时期的销售数据,销售员可按照自己的策略和公司情况来自由设置销售价格。我们的目的是根据公司过去发现的交易报告中的错误和欺

2、诈企图,帮助公司完成核实这些销售报告真实性的工作。1.加载数据:共401146行数据,每一行包括来自销售员报告的信息。ID:说明销售员ID的一个因子变量。Prod:说明销售产品ID号的一个因子变量。Quant:报告该产品销售的数量。Val:报告销售记录的总价值。Insp:有3个可能值的因子变量——ok表示公司检查了该交易并认为该交易有效;fraud表示发现该交易为欺诈;unkn表示该交易未经过公司审核。2.数据集探索:>sum(is.na(sales$Quant)&is.na(sales$Val))[1]888从数据的统计特征初步可以看出v431号雇员录入的数据最多,p1125号产品卖出最多

3、,可以看到产品销售的数量和总价值的四分位数据,公司已检查承认有效的数据有14462,已发现欺诈的数据有1270,未经过审查的有385414,说明大量数据还未经过审核,需要接下来的数据分析来检查其中的欺诈数据。数据中有大量缺失值,当重要产品销售数和销售总价值同时缺失时,就无法进行分析,这样的数据有888条,在40万组数据中可以忽略不计。判断数据框中每个变量的属性:str(sales)'data.frame':401146obs.of5variables:$ID:Factorw/6016levels"v1","v2","v3",..:1234356789...$Prod:Factorw/4548

4、levels"p1","p2","p3",..:1111122222...$Quant:int1823072203931126164104350200233118...$Val:num1665878076990110020260...$Insp:Factorw/3levels"ok","unkn","fraud":2222222222...可以看到ID,Prod,Insp是因子型变量,Quant整数型,Val数值型。table(sales$Insp)/nrow(sales)*100okunknfraud3.612420096.07028470.3172953在只考虑已检查过的销售记录,看到欺

5、诈比例较小。绘制每个交易人员的交易数量和每个产品的交易数量图形totS<-table(sales$ID)totP<-table(sales$Prod)barplot(totS,main='Transactionspersalespeople',names.arg='',xlab='Salespeople',ylab='Amount')barplot(totP,main='Transactionsperproduct',names.arg='',xlab='Products',ylab='Amount')看到所有销售人员的数据相当不同,对于每个产品,波动性较大。sales$Uprice<-sa

6、les$Val/sales$Quantsummary(sales$Uprice)Min.1stQu.MedianMean3rdQu.Max.NA's0.008.4611.8920.3019.1126460.0013248检查产品单位价格的分布,看到有明显的变动性。out<-tapply(Uprice,list(Prod=Prod),function(x)length(boxplot.stats(x)$out))out[order(out,decreasing=T)[1:10]]sum(out)[1]29446sum(out)/nrow(sales)*100[1]7.34047初步找到2944

7、6个被认为是离群值的交易,相当于交易的7.3%3.缺失值处理:找出变量Quant和变量Val同时有缺失值的交易占很大比例的销售人员>totS<-table(sales$ID)>totP<-table(sales$Prod)>nas<-sales[which(is.na(sales$Quant)&is.na(sales$Val)),c("ID","Prod")]>propS<-100*table(nas$ID)

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。