疑似问题订单场景:

1.跨地市或超远距离外下单

2.在大于正常距离范围,小于超远距离,下单笔数超过N笔

数据探索:

近一个月店铺与下单位置距离的均值、标准差、最大值、最小值、上下四分位数、偏度和峰度

数据:近一周,广州数据

首先分析距离分布

首先绘制关于距离的直方图和分布图

library(tidyverse)
library(showtext)
showtext_auto()
load("order.RData")

order <- order %>% filter(订单笔数 != 0) %>% filter(店铺经度!=0)

 

library(ggthemes)
p <- ggplot(order, aes(x=log(店铺与订单距离))) + geom_histogram(aes(y = ..density.., 
                                                           fill = ..count..), binwidth=0.2) + geom_density()   # 绘制密度直方图


p <- p+theme_solarized()


p
## Warning: Removed 166 rows containing non-finite values (stat_bin).
## Warning: Removed 166 rows containing non-finite values (stat_density).

从图中可以看到,关于距离的分布是偏左的,也就是意味着大多数人的订单产生的位置是靠近网点的。

计算统计指标

summary(order$店铺与订单距离)
##     Min.  1st Qu.   Median     Mean  3rd Qu.     Max.     NA's 
##     64.7    633.1   2347.1  13295.2  10727.2 367271.5      166
print("标准差")
## [1] "标准差"
sd(order$店铺与订单距离,na.rm = T)
## [1] 30242.41
# 偏度
print("偏度")
## [1] "偏度"
mean(((order$店铺与订单距离-mean(order$店铺与订单距离,na.rm = T))/
        sd(order$店铺与订单距离,na.rm = T))^3,na.rm = T)
## [1] 4.721915
# 峰度
print("峰度")
## [1] "峰度"
mean(((order$店铺与订单距-mean(order$店铺与订单距,na.rm = T))/sd(order$店铺与订单距,na.rm = TRUE))^4,na.rm = T)-3
## [1] 32.06426

从统计量中可以看到,订单产生与网点的距离,中位数是2347,75%分为数是10727,这意味着超过75%的人订单产生与网点的距离小于10727.2。如果距离超过这个,则需要关注以下。

另外,数据中存在部分缺失值,例如网点位置缺失,订单位置缺失,这一部分也需要查明原因。

订单数量的分布

首先绘制关于订单的分布图和密度图

p_ordernumber <- ggplot(order, aes(x=log(订单笔数))) + geom_histogram(aes(y = ..density.., 
                                                             fill = ..count..), binwidth=0.2) + geom_density()   # 绘制密度直方图


p_ordernumber <- p_ordernumber + theme_solarized()

p_ordernumber

从图中可以看出,大部分的人订单数量都比较少,约为1单

对不同的订单数量进行计数

table(order$订单笔数)
## 
##     1     2     3     4     5     6     7     8     9    10    11    12    13 
## 20478   921   299   178   107    70    45    38    25    11    16    16     7 
##    14    15    16    17    18    19    20    21    22    23    24    26    27 
##     5     4     6     5     5     2     4     3     1     1     1     1     2 
##    28    29    33    34    36    41    42    44    45    49    50    51    54 
##     2     1     2     1     2     1     1     1     1     1     1     1     1 
##    74    75    94   104   110   118   197 
##     1     1     1     1     1     1     1

从数据中可以看到,绝大部分人只有1单,但还是有部分人订单数据非常多。

计算相关的统计指标

summary(order$订单笔数)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   1.000   1.000   1.000   1.277   1.000 197.000
print("标准差")
## [1] "标准差"
sd(order$订单笔数)
## [1] 2.572349
# 偏度

print("偏度")
## [1] "偏度"
mean(((order$订单笔数-mean(order$订单笔数,na.rm = T))/
        sd(order$订单笔数,na.rm = T))^3,na.rm = T)
## [1] 37.96309
# 峰度

print("峰度")
## [1] "峰度"
mean(((order$订单笔数-mean(order$订单笔数,na.rm = T))/sd(order$订单笔数,na.rm = TRUE))^4,na.rm = T)-3
## [1] 2135.256

从数据中可以看到,75%的人都只有一单。单量过多的人需要排查原因。