R语言和集算器:找出每个月的销售额均在前3名的销售员

本文对比了R语言和集算器在找出每个月销售额均在前3名的销售员问题上的解决方案。通过数据库访问、时间函数、分步运算和结果处理等方面进行探讨,发现R语言依赖于丰富的基础函数和第三方库,而集算器在数据成员访问和分组处理上更直观高效。
摘要由CSDN通过智能技术生成

R语言和集算器都具备优秀的分步运算能力,但在细节上有所不同,下面通过一个例子进行对比:

某公司的销售部门希望统计出优秀的销售员,即今年从1月份到上个月为止,每个月的销售额均是前3名的销售员。数据主要来自MSSQL数据库的订单表:salesOrder,主要字段包括订单编号:orderID,销售员姓名:name,销售额:sales,订单时间:salesDate。

解法大概是这样的:

1.      计算出年初和本月初的日期,按时间过滤出数据

2.      按月份和销售员分组,计算每个月每个销售员的销售额。

3.      按月份分组。计算分组内的销售额的排名。

4.      过滤每个分组内的前3名。

5.      求各分组的交集,即每个月都是前3名的销售员。

 

R的解法如下:

01   library(RODBC)

02   odbcDataSources()

03   conn<-odbcConnect("sqlsvr")

04   originalData<-sqlQuery(conn,'select *from salesOrder')

05   odbcClose(conn)

06  starTime<-as.POSIXlt(paste(format(Sys.Date(),'%Y'),'-01-01',sep=''))

07  endTime<-as.POSIXlt(paste(format(Sys.Date(),'%Y'),format(Sys.Date(),'%m'),'01'

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值