任务:
某西饼屋准备对现有的店面重新进行布置,以期能够给用户提供更加友好的体验。现有某西饼屋某天60天订单数据,部分数据如下所示,使用Apriori算法对西饼屋订单进行关联分析。

一、导入数据:

setwd('D:/goodsdata')
bread <- read.csv("bread.csv",stringsAsFactors = F)
drink <- read.csv("drink.csv",stringsAsFactors = F)
Breakfast <- read.csv("Breakfast.csv",stringsAsFactors = F)

bread:

drink:

Breakfast:

二、统计60天内每种商品的购买次数

#统计每件商品的购买次数
breakfast <-data.frame(table(Breakfast[,2]))
names(breakfast)<-c("Goods","Num")
#将统计每件商品的购买次数的breakfast表,降序排列
breakfast <- breakfast[order(breakfast$Num,decreasing = T),]
breakfast$percent <- breakfast$Num/sum(breakfast$Num)

breakfast:

#将统计每件商品的购买次数的breakfast表,绘制条形统计图
barplot(breakfast$Num,names.arg=breakfast$Goods,xlab="商品名称",ylab="每件商品的购买次数",col="blue",main="某60天内每件商品的购买次数",border="red",yaxt = "n")
axis(2,at=breakfast$Num,labels=breakfast$Num,las = 1)

#将统计每件商品的购买次数的breakfast表,绘制折线统计图
plot(breakfast$Num,main="某60天内每件商品的购买次数",xlab="商品名称",ylab="每件商品的购买次数",type="o",lty=2,col='blue',bty='l', xaxt='n',yaxt = "n")
axis(1,at=breakfast$Goods,labels=breakfast$Goods,las = 1)
axis(2,at=breakfast$Num,labels=breakfast$Num,las = 1)


三、统计60天内每种类别商品的购买次数

#将统计商品的购物单的Breakfast表与bread表对应,显示出商品类别
Goods1 <- merge(Breakfast,bread,"Goods",all=T)
#将统计每类商品的购买次数的Type1表
Types1 <- data.frame(table(Goods1$sorts))
#将统计每类商品的购买次数的Type1表,降序排列
Types1 <- Types1[order(Types1$Freq,decreasing = T),]

Good1:(部分)

Type1:

#将统计每类商品的购买次数的Type1表,绘制条形统计图
barplot(Types1$Freq,names.arg=Types1$Var1,xlab="类别名称",ylab="每种类别的购买次数",col="blue",main="某60天内每种类别的购买次数",border="red",yaxt = "n")
axis(2,at=Types1$Freq,labels=Types1$Freq,las = 1)

#将统计商品的购物单的Breakfast表与drink表对应,显示出商品类别
Goods2 <- merge(Breakfast,drink,"Goods",all=T)
#将统计每类商品的购买次数的Type2表
Types2 <- data.frame(table(Goods2$sorts))
#将统计每类商品的购买次数的Type2表,降序排列
Types2 <- Types2[order(Types2$Freq,decreasing = T),]

Good2:(部分)

Type2:

#将统计每类商品的购买次数的Type1表,绘制条形统计图
barplot(Types1$Freq,names.arg=Types1$Var1,xlab="类别名称",ylab="每种类别的购买次数",col="blue",main="某60天内每种类别的购买次数",border="red",yaxt = "n")
axis(2,at=Types1$Freq,labels=Types1$Freq,las = 1)


四、统计某一特定类别中的商品
例如:点心面包中的商品统计、奶制品中的商品统计

#将点心面包数据提取
Goods1_dianxinmianbao <- subset(Goods1,Goods1$sorts == "点心面包")
#将统计点心面包中的商品购买次数的Types1_dianxinmianbao表
Types1_dianxinmianbao <- data.frame(table(Goods1_dianxinmianbao$Goods))
#将统计点心面包中的商品购买次数的Types1_dianxinmianbao表,降序排列
Types1_dianxinmianbao <- Types1_dianxinmianbao[order(Types1_dianxinmianbao$Freq,decreasing = T),]

Goods1_dianxinmianbao:(部分)

Types1_dianxinmianbao:

#将统计点心面包中的商品购买次数的Types1_dianxinmianbao表,绘制条形统计图
barplot(Types1_dianxinmianbao$Freq,names.arg=Types1_dianxinmianbao$Var1,xlab="商品名称",ylab="每种商品的购买次数",col="blue",main="某60天内点心面包中各商品的购买次数",border="red",yaxt = "n")
axis(2,at=Types1_dianxinmianbao$Freq,labels=Types1_dianxinmianbao$Freq,las = 1)

#将奶制品数据提取
Goods2_naizhipin <- subset(Goods2,Goods2$sorts == "奶制品")
#将统计奶制品中的商品购买次数的Types2_naizhipin表
Types2_naizhipin <- data.frame(table(Goods2_naizhipin$Goods))
#将统计奶制品中的商品购买次数的Types2_naizhipin表,降序排列
Types2_naizhipin <- Types2_naizhipin[order(Types2_naizhipin$Freq,decreasing = T),]

Goods2_naizhipin:(部分)

Types2_naizhipin:

#将统计奶制品中的商品购买次数的Types2_naizhipin表,绘制条形统计图
barplot(Types2_naizhipin$Freq,names.arg=Types2_naizhipin$Var1,xlab="商品名称",ylab="每种商品的购买次数",col="blue",main="某60天内奶制品中各商品的购买次数",border="red",yaxt = "n")
axis(2,at=Types2_naizhipin$Freq,labels=Types2_naizhipin$Freq,las = 1)


五、关联规则—Apriori算法




library(arules)  # 导入所需库包#Apriori算法实现包含在arules包
# 数据形式转换
dataList <- list()
for (i in unique(Breakfast$ID)) {#unique返回对象的不同复取值,如unique(c(1,1,2,3)) 返回1 2 3dataList[[i]] <- Breakfast[which(Breakfast$ID == i), 2]
}
TransRep <- as(dataList, "transactions") #事务型#转换成transaction格式
inspect(TransRep)#查看事务型数据
> inspect(TransRep)items
[1]  {纯牛奶,提子土司}
[2]  {纯牛奶,三明治,提拉米苏}
[3]  {豆浆,肉松面包,蒜香芝士面包}
[4]  {汉堡包,黑森林蛋糕,奶茶,三明治}
[5]  {小麦土司}
[6]  {黑森林蛋糕,红豆酥皮面包,芝士蛋糕}
[7]  {酥皮面包}
[8]  {纯牛奶,蛋挞,豆奶}
[9]  {咖啡,热狗}
[10] {豆奶,汉堡包,奶茶,蒜香芝士面包,提子土司}
[11] {榴莲千层}
[12] {红豆吐司,抹茶蛋糕,小麦土司}
[13] {蛋挞,肉松面包}
[14] {纯牛奶,蛋挞,黑森林蛋糕,红豆吐司,奶茶}
[15] {纯牛奶,红豆吐司,咖啡,榴莲千层}
[16] {蛋挞,豆浆,汉堡包,红豆吐司}
[17] {豆浆,豆奶,抹茶蛋糕}
[18] {豆奶,虎皮蛋糕,榴莲千层,奶茶,芝士蛋糕}
[19] {纯牛奶,豆奶,红豆酥皮面包,红豆吐司}
[20] {纯牛奶,榴莲千层,热狗}
[21] {红豆酥皮面包,热狗,小麦土司}
[22] {蛋挞,虎皮蛋糕,三明治}
[23] {纯牛奶,豆浆,榴莲千层,三明治,芝士蛋糕}
[24] {豆奶,热狗,三明治}
[25] {豆浆,虎皮蛋糕,奶茶}
[26] {纯牛奶,黑森林蛋糕,牛角面包}
[27] {豆浆,虎皮蛋糕,咖啡,肉松面包,酥皮面包}
[28] {蛋挞,奶茶}
[29] {黑森林蛋糕,咖啡}
[30] {豆浆,豆奶,榴莲千层,提拉米苏,提子土司}
[31] {肉松面包,三明治,酥皮面包}
[32] {蛋挞,小麦土司}
[33] {豆奶,提子土司}
[34] {汉堡包,虎皮蛋糕,奶茶,提拉米苏}
[35] {豆奶,法棍,汉堡包}
[36] {豆奶,法棍,咖啡,榴莲千层,牛角面包}
[37] {蒜香芝士面包}
[38] {豆奶,抹茶蛋糕}
[39] {豆浆,法棍,咖啡}
[40] {榴莲千层,酥皮面包}
[41] {纯牛奶,豆奶,热狗,肉松面包,三明治}
[42] {牛角面包,小麦土司}
[43] {黑森林蛋糕,奶茶}
[44] {纯牛奶,榴莲千层,热狗}
[45] {咖啡,奶茶,牛角面包,热狗,三明治}
[46] {三明治,提拉米苏}
[47] {豆浆,法棍,咖啡,肉松面包,提拉米苏}
[48] {奶茶,小麦土司}
[49] {咖啡,三明治,提拉米苏,提子土司}
[50] {蛋挞,豆浆,酥皮面包}
[51] {纯牛奶,奶茶,热狗,三明治}
[52] {蛋挞,奶茶,热狗,酥皮面包}
[53] {豆浆,虎皮蛋糕,酥皮面包,蒜香芝士面包}
[54] {纯牛奶,豆浆,肉松面包,酥皮面包}
[55] {蛋挞,热狗}
[56] {纯牛奶,豆浆,红豆酥皮面包,芝士蛋糕}
[57] {牛角面包,小麦土司}
[58] {红豆酥皮面包,咖啡,奶茶,蒜香芝士面包,小麦土司}
[59] {豆奶,汉堡包,咖啡,蒜香芝士面包,提子土司}
[60] {纯牛奶,法棍,咖啡,热狗,肉松面包}
#最小支持度0.02;最小置信度0.25;最大项数10
RulesRep <- apriori(TransRep, parameter = list(support = 0.02, confidence = 0.25))
inspect(RulesRep)
> inspect(RulesRep)lhs                               rhs            support    confidence lift      count
[1]   {}                             => {纯牛奶}       0.25000000 0.2500000   1.000000 15
[2]   {抹茶蛋糕}                     => {豆奶}         0.03333333 0.6666667   3.076923  2
[3]   {牛角面包}                     => {小麦土司}     0.03333333 0.4000000   3.000000  2
[4]   {小麦土司}                     => {牛角面包}     0.03333333 0.2500000   3.000000  2
[5]   {牛角面包}                     => {咖啡}         0.03333333 0.4000000   2.000000  2
[6]   {芝士蛋糕}                     => {红豆酥皮面包} 0.03333333 0.5000000   6.000000  2
[7]   {红豆酥皮面包}                 => {芝士蛋糕}     0.03333333 0.4000000   6.000000  2
[8]   {芝士蛋糕}                     => {榴莲千层}     0.03333333 0.5000000   3.333333  2
[9]   {芝士蛋糕}                     => {豆浆}         0.03333333 0.5000000   2.307692  2
[10]  {芝士蛋糕}                     => {纯牛奶}       0.03333333 0.5000000   2.000000  2
[11]  {红豆酥皮面包}                 => {小麦土司}     0.03333333 0.4000000   3.000000  2
[12]  {小麦土司}                     => {红豆酥皮面包} 0.03333333 0.2500000   3.000000  2
[13]  {红豆酥皮面包}                 => {纯牛奶}       0.03333333 0.4000000   1.600000  2
[14]  {黑森林蛋糕}                   => {奶茶}         0.05000000 0.5000000   2.307692  3
[15]  {黑森林蛋糕}                   => {纯牛奶}       0.03333333 0.3333333   1.333333  2
[16]  {红豆吐司}                     => {蛋挞}         0.03333333 0.4000000   2.400000  2
[17]  {红豆吐司}                     => {纯牛奶}       0.05000000 0.6000000   2.400000  3
[18]  {小麦土司}                     => {奶茶}         0.03333333 0.2500000   1.153846  2
[19]  {法棍}                         => {肉松面包}     0.03333333 0.4000000   3.000000  2
[20]  {肉松面包}                     => {法棍}         0.03333333 0.2500000   3.000000  2
[21]  {法棍}                         => {咖啡}         0.06666667 0.8000000   4.000000  4
[22]  {咖啡}                         => {法棍}         0.06666667 0.3333333   4.000000  4
[23]  {法棍}                         => {豆奶}         0.03333333 0.4000000   1.846154  2
[24]  {法棍}                         => {豆浆}         0.03333333 0.4000000   1.846154  2
[25]  {提子土司}                     => {蒜香芝士面包} 0.03333333 0.3333333   3.333333  2
[26]  {蒜香芝士面包}                 => {提子土司}     0.03333333 0.3333333   3.333333  2
[27]  {提子土司}                     => {提拉米苏}     0.03333333 0.3333333   3.333333  2
[28]  {提拉米苏}                     => {提子土司}     0.03333333 0.3333333   3.333333  2
[29]  {提子土司}                     => {汉堡包}       0.03333333 0.3333333   3.333333  2
[30]  {汉堡包}                       => {提子土司}     0.03333333 0.3333333   3.333333  2
[31]  {提子土司}                     => {咖啡}         0.03333333 0.3333333   1.666667  2
[32]  {提子土司}                     => {豆奶}         0.06666667 0.6666667   3.076923  4
[33]  {豆奶}                         => {提子土司}     0.06666667 0.3076923   3.076923  4
[34]  {蒜香芝士面包}                 => {汉堡包}       0.03333333 0.3333333   3.333333  2
[35]  {汉堡包}                       => {蒜香芝士面包} 0.03333333 0.3333333   3.333333  2
[36]  {蒜香芝士面包}                 => {咖啡}         0.03333333 0.3333333   1.666667  2
[37]  {蒜香芝士面包}                 => {豆奶}         0.03333333 0.3333333   1.538462  2
[38]  {蒜香芝士面包}                 => {奶茶}         0.03333333 0.3333333   1.538462  2
[39]  {蒜香芝士面包}                 => {豆浆}         0.03333333 0.3333333   1.538462  2
[40]  {提拉米苏}                     => {三明治}       0.05000000 0.5000000   2.727273  3
[41]  {三明治}                       => {提拉米苏}     0.05000000 0.2727273   2.727273  3
[42]  {提拉米苏}                     => {咖啡}         0.03333333 0.3333333   1.666667  2
[43]  {提拉米苏}                     => {豆浆}         0.03333333 0.3333333   1.538462  2
[44]  {虎皮蛋糕}                     => {酥皮面包}     0.03333333 0.3333333   2.500000  2
[45]  {酥皮面包}                     => {虎皮蛋糕}     0.03333333 0.2500000   2.500000  2
[46]  {虎皮蛋糕}                     => {奶茶}         0.05000000 0.5000000   2.307692  3
[47]  {虎皮蛋糕}                     => {豆浆}         0.05000000 0.5000000   2.307692  3
[48]  {汉堡包}                       => {豆奶}         0.05000000 0.5000000   2.307692  3
[49]  {汉堡包}                       => {奶茶}         0.05000000 0.5000000   2.307692  3
[50]  {酥皮面包}                     => {蛋挞}         0.03333333 0.2500000   1.500000  2
[51]  {酥皮面包}                     => {肉松面包}     0.05000000 0.3750000   2.812500  3
[52]  {肉松面包}                     => {酥皮面包}     0.05000000 0.3750000   2.812500  3
[53]  {酥皮面包}                     => {豆浆}         0.06666667 0.5000000   2.307692  4
[54]  {豆浆}                         => {酥皮面包}     0.06666667 0.3076923   2.307692  4
[55]  {蛋挞}                         => {奶茶}         0.05000000 0.3000000   1.384615  3
[56]  {肉松面包}                     => {热狗}         0.03333333 0.2500000   1.363636  2
[57]  {肉松面包}                     => {三明治}       0.03333333 0.2500000   1.363636  2
[58]  {肉松面包}                     => {咖啡}         0.05000000 0.3750000   1.875000  3
[59]  {咖啡}                         => {肉松面包}     0.05000000 0.2500000   1.875000  3
[60]  {肉松面包}                     => {豆浆}         0.06666667 0.5000000   2.307692  4
[61]  {豆浆}                         => {肉松面包}     0.06666667 0.3076923   2.307692  4
[62]  {肉松面包}                     => {纯牛奶}       0.05000000 0.3750000   1.500000  3
[63]  {榴莲千层}                     => {豆奶}         0.05000000 0.3333333   1.538462  3
[64]  {榴莲千层}                     => {纯牛奶}       0.06666667 0.4444444   1.777778  4
[65]  {纯牛奶}                       => {榴莲千层}     0.06666667 0.2666667   1.777778  4
[66]  {热狗}                         => {三明治}       0.06666667 0.3636364   1.983471  4
[67]  {三明治}                       => {热狗}         0.06666667 0.3636364   1.983471  4
[68]  {热狗}                         => {咖啡}         0.05000000 0.2727273   1.363636  3
[69]  {咖啡}                         => {热狗}         0.05000000 0.2500000   1.363636  3
[70]  {热狗}                         => {奶茶}         0.05000000 0.2727273   1.258741  3
[71]  {热狗}                         => {纯牛奶}       0.08333333 0.4545455   1.818182  5
[72]  {纯牛奶}                       => {热狗}         0.08333333 0.3333333   1.818182  5
[73]  {三明治}                       => {奶茶}         0.05000000 0.2727273   1.258741  3
[74]  {三明治}                       => {纯牛奶}       0.06666667 0.3636364   1.454545  4
[75]  {纯牛奶}                       => {三明治}       0.06666667 0.2666667   1.454545  4
[76]  {咖啡}                         => {豆浆}         0.05000000 0.2500000   1.153846  3
[77]  {豆浆,芝士蛋糕}                => {纯牛奶}       0.03333333 1.0000000   4.000000  2
[78]  {纯牛奶,芝士蛋糕}              => {豆浆}         0.03333333 1.0000000   4.615385  2
[79]  {纯牛奶,豆浆}                  => {芝士蛋糕}     0.03333333 0.6666667  10.000000  2
[80]  {法棍,肉松面包}                => {咖啡}         0.03333333 1.0000000   5.000000  2
[81]  {法棍,咖啡}                    => {肉松面包}     0.03333333 0.5000000   3.750000  2
[82]  {咖啡,肉松面包}                => {法棍}         0.03333333 0.6666667   8.000000  2
[83]  {法棍,咖啡}                    => {豆浆}         0.03333333 0.5000000   2.307692  2
[84]  {豆浆,法棍}                    => {咖啡}         0.03333333 1.0000000   5.000000  2
[85]  {豆浆,咖啡}                    => {法棍}         0.03333333 0.6666667   8.000000  2
[86]  {蒜香芝士面包,提子土司}        => {汉堡包}       0.03333333 1.0000000  10.000000  2
[87]  {汉堡包,提子土司}              => {蒜香芝士面包} 0.03333333 1.0000000  10.000000  2
[88]  {汉堡包,蒜香芝士面包}          => {提子土司}     0.03333333 1.0000000  10.000000  2
[89]  {蒜香芝士面包,提子土司}        => {豆奶}         0.03333333 1.0000000   4.615385  2
[90]  {豆奶,提子土司}                => {蒜香芝士面包} 0.03333333 0.5000000   5.000000  2
[91]  {豆奶,蒜香芝士面包}            => {提子土司}     0.03333333 1.0000000  10.000000  2
[92]  {汉堡包,提子土司}              => {豆奶}         0.03333333 1.0000000   4.615385  2
[93]  {豆奶,提子土司}                => {汉堡包}       0.03333333 0.5000000   5.000000  2
[94]  {豆奶,汉堡包}                  => {提子土司}     0.03333333 0.6666667   6.666667  2
[95]  {汉堡包,蒜香芝士面包}          => {豆奶}         0.03333333 1.0000000   4.615385  2
[96]  {豆奶,蒜香芝士面包}            => {汉堡包}       0.03333333 1.0000000  10.000000  2
[97]  {豆奶,汉堡包}                  => {蒜香芝士面包} 0.03333333 0.6666667   6.666667  2
[98]  {虎皮蛋糕,酥皮面包}            => {豆浆}         0.03333333 1.0000000   4.615385  2
[99]  {豆浆,虎皮蛋糕}                => {酥皮面包}     0.03333333 0.6666667   5.000000  2
[100] {豆浆,酥皮面包}                => {虎皮蛋糕}     0.03333333 0.5000000   5.000000  2
[101] {肉松面包,酥皮面包}            => {豆浆}         0.03333333 0.6666667   3.076923  2
[102] {豆浆,酥皮面包}                => {肉松面包}     0.03333333 0.5000000   3.750000  2
[103] {豆浆,肉松面包}                => {酥皮面包}     0.03333333 0.5000000   3.750000  2
[104] {热狗,肉松面包}                => {纯牛奶}       0.03333333 1.0000000   4.000000  2
[105] {纯牛奶,肉松面包}              => {热狗}         0.03333333 0.6666667   3.636364  2
[106] {纯牛奶,热狗}                  => {肉松面包}     0.03333333 0.4000000   3.000000  2
[107] {咖啡,肉松面包}                => {豆浆}         0.03333333 0.6666667   3.076923  2
[108] {豆浆,肉松面包}                => {咖啡}         0.03333333 0.5000000   2.500000  2
[109] {豆浆,咖啡}                    => {肉松面包}     0.03333333 0.6666667   5.000000  2
[110] {榴莲千层,热狗}                => {纯牛奶}       0.03333333 1.0000000   4.000000  2
[111] {纯牛奶,榴莲千层}              => {热狗}         0.03333333 0.5000000   2.727273  2
[112] {纯牛奶,热狗}                  => {榴莲千层}     0.03333333 0.4000000   2.666667  2
[113] {热狗,三明治}                  => {豆奶}         0.03333333 0.5000000   2.307692  2
[114] {豆奶,热狗}                    => {三明治}       0.03333333 1.0000000   5.454545  2
[115] {豆奶,三明治}                  => {热狗}         0.03333333 1.0000000   5.454545  2
[116] {热狗,三明治}                  => {奶茶}         0.03333333 0.5000000   2.307692  2
[117] {奶茶,热狗}                    => {三明治}       0.03333333 0.6666667   3.636364  2
[118] {奶茶,三明治}                  => {热狗}         0.03333333 0.6666667   3.636364  2
[119] {热狗,三明治}                  => {纯牛奶}       0.03333333 0.5000000   2.000000  2
[120] {纯牛奶,热狗}                  => {三明治}       0.03333333 0.4000000   2.181818  2
[121] {纯牛奶,三明治}                => {热狗}         0.03333333 0.5000000   2.727273  2
[122] {汉堡包,蒜香芝士面包,提子土司} => {豆奶}         0.03333333 1.0000000   4.615385  2
[123] {豆奶,蒜香芝士面包,提子土司}   => {汉堡包}       0.03333333 1.0000000  10.000000  2
[124] {豆奶,汉堡包,提子土司}         => {蒜香芝士面包} 0.03333333 1.0000000  10.000000  2
[125] {豆奶,汉堡包,蒜香芝士面包}     => {提子土司}     0.03333333 1.0000000  10.000000  2
inspect(sort(RulesRep, by = "lift"))  # 按提升度从高到低查看# sor()排序,排序结果不可逆转
> inspect(sort(RulesRep, by = "lift"))  # 按提升度从高到低查看lhs                               rhs            support    confidence lift      count
[1]   {纯牛奶,豆浆}                  => {芝士蛋糕}     0.03333333 0.6666667  10.000000  2
[2]   {蒜香芝士面包,提子土司}        => {汉堡包}       0.03333333 1.0000000  10.000000  2
[3]   {汉堡包,提子土司}              => {蒜香芝士面包} 0.03333333 1.0000000  10.000000  2
[4]   {汉堡包,蒜香芝士面包}          => {提子土司}     0.03333333 1.0000000  10.000000  2
[5]   {豆奶,蒜香芝士面包}            => {提子土司}     0.03333333 1.0000000  10.000000  2
[6]   {豆奶,蒜香芝士面包}            => {汉堡包}       0.03333333 1.0000000  10.000000  2
[7]   {豆奶,蒜香芝士面包,提子土司}   => {汉堡包}       0.03333333 1.0000000  10.000000  2
[8]   {豆奶,汉堡包,提子土司}         => {蒜香芝士面包} 0.03333333 1.0000000  10.000000  2
[9]   {豆奶,汉堡包,蒜香芝士面包}     => {提子土司}     0.03333333 1.0000000  10.000000  2
[10]  {咖啡,肉松面包}                => {法棍}         0.03333333 0.6666667   8.000000  2
[11]  {豆浆,咖啡}                    => {法棍}         0.03333333 0.6666667   8.000000  2
[12]  {豆奶,汉堡包}                  => {提子土司}     0.03333333 0.6666667   6.666667  2
[13]  {豆奶,汉堡包}                  => {蒜香芝士面包} 0.03333333 0.6666667   6.666667  2
[14]  {芝士蛋糕}                     => {红豆酥皮面包} 0.03333333 0.5000000   6.000000  2
[15]  {红豆酥皮面包}                 => {芝士蛋糕}     0.03333333 0.4000000   6.000000  2
[16]  {豆奶,热狗}                    => {三明治}       0.03333333 1.0000000   5.454545  2
[17]  {豆奶,三明治}                  => {热狗}         0.03333333 1.0000000   5.454545  2
[18]  {法棍,肉松面包}                => {咖啡}         0.03333333 1.0000000   5.000000  2
[19]  {豆浆,法棍}                    => {咖啡}         0.03333333 1.0000000   5.000000  2
[20]  {豆奶,提子土司}                => {蒜香芝士面包} 0.03333333 0.5000000   5.000000  2
[21]  {豆奶,提子土司}                => {汉堡包}       0.03333333 0.5000000   5.000000  2
[22]  {豆浆,虎皮蛋糕}                => {酥皮面包}     0.03333333 0.6666667   5.000000  2
[23]  {豆浆,酥皮面包}                => {虎皮蛋糕}     0.03333333 0.5000000   5.000000  2
[24]  {豆浆,咖啡}                    => {肉松面包}     0.03333333 0.6666667   5.000000  2
[25]  {纯牛奶,芝士蛋糕}              => {豆浆}         0.03333333 1.0000000   4.615385  2
[26]  {蒜香芝士面包,提子土司}        => {豆奶}         0.03333333 1.0000000   4.615385  2
[27]  {汉堡包,提子土司}              => {豆奶}         0.03333333 1.0000000   4.615385  2
[28]  {汉堡包,蒜香芝士面包}          => {豆奶}         0.03333333 1.0000000   4.615385  2
[29]  {虎皮蛋糕,酥皮面包}            => {豆浆}         0.03333333 1.0000000   4.615385  2
[30]  {汉堡包,蒜香芝士面包,提子土司} => {豆奶}         0.03333333 1.0000000   4.615385  2
[31]  {法棍}                         => {咖啡}         0.06666667 0.8000000   4.000000  4
[32]  {咖啡}                         => {法棍}         0.06666667 0.3333333   4.000000  4
[33]  {豆浆,芝士蛋糕}                => {纯牛奶}       0.03333333 1.0000000   4.000000  2
[34]  {热狗,肉松面包}                => {纯牛奶}       0.03333333 1.0000000   4.000000  2
[35]  {榴莲千层,热狗}                => {纯牛奶}       0.03333333 1.0000000   4.000000  2
[36]  {法棍,咖啡}                    => {肉松面包}     0.03333333 0.5000000   3.750000  2
[37]  {豆浆,酥皮面包}                => {肉松面包}     0.03333333 0.5000000   3.750000  2
[38]  {豆浆,肉松面包}                => {酥皮面包}     0.03333333 0.5000000   3.750000  2
[39]  {纯牛奶,肉松面包}              => {热狗}         0.03333333 0.6666667   3.636364  2
[40]  {奶茶,热狗}                    => {三明治}       0.03333333 0.6666667   3.636364  2
[41]  {奶茶,三明治}                  => {热狗}         0.03333333 0.6666667   3.636364  2
[42]  {芝士蛋糕}                     => {榴莲千层}     0.03333333 0.5000000   3.333333  2
[43]  {提子土司}                     => {蒜香芝士面包} 0.03333333 0.3333333   3.333333  2
[44]  {蒜香芝士面包}                 => {提子土司}     0.03333333 0.3333333   3.333333  2
[45]  {提子土司}                     => {提拉米苏}     0.03333333 0.3333333   3.333333  2
[46]  {提拉米苏}                     => {提子土司}     0.03333333 0.3333333   3.333333  2
[47]  {提子土司}                     => {汉堡包}       0.03333333 0.3333333   3.333333  2
[48]  {汉堡包}                       => {提子土司}     0.03333333 0.3333333   3.333333  2
[49]  {蒜香芝士面包}                 => {汉堡包}       0.03333333 0.3333333   3.333333  2
[50]  {汉堡包}                       => {蒜香芝士面包} 0.03333333 0.3333333   3.333333  2
[51]  {抹茶蛋糕}                     => {豆奶}         0.03333333 0.6666667   3.076923  2
[52]  {提子土司}                     => {豆奶}         0.06666667 0.6666667   3.076923  4
[53]  {豆奶}                         => {提子土司}     0.06666667 0.3076923   3.076923  4
[54]  {肉松面包,酥皮面包}            => {豆浆}         0.03333333 0.6666667   3.076923  2
[55]  {咖啡,肉松面包}                => {豆浆}         0.03333333 0.6666667   3.076923  2
[56]  {牛角面包}                     => {小麦土司}     0.03333333 0.4000000   3.000000  2
[57]  {小麦土司}                     => {牛角面包}     0.03333333 0.2500000   3.000000  2
[58]  {红豆酥皮面包}                 => {小麦土司}     0.03333333 0.4000000   3.000000  2
[59]  {小麦土司}                     => {红豆酥皮面包} 0.03333333 0.2500000   3.000000  2
[60]  {法棍}                         => {肉松面包}     0.03333333 0.4000000   3.000000  2
[61]  {肉松面包}                     => {法棍}         0.03333333 0.2500000   3.000000  2
[62]  {纯牛奶,热狗}                  => {肉松面包}     0.03333333 0.4000000   3.000000  2
[63]  {酥皮面包}                     => {肉松面包}     0.05000000 0.3750000   2.812500  3
[64]  {肉松面包}                     => {酥皮面包}     0.05000000 0.3750000   2.812500  3
[65]  {提拉米苏}                     => {三明治}       0.05000000 0.5000000   2.727273  3
[66]  {三明治}                       => {提拉米苏}     0.05000000 0.2727273   2.727273  3
[67]  {纯牛奶,榴莲千层}              => {热狗}         0.03333333 0.5000000   2.727273  2
[68]  {纯牛奶,三明治}                => {热狗}         0.03333333 0.5000000   2.727273  2
[69]  {纯牛奶,热狗}                  => {榴莲千层}     0.03333333 0.4000000   2.666667  2
[70]  {虎皮蛋糕}                     => {酥皮面包}     0.03333333 0.3333333   2.500000  2
[71]  {酥皮面包}                     => {虎皮蛋糕}     0.03333333 0.2500000   2.500000  2
[72]  {豆浆,肉松面包}                => {咖啡}         0.03333333 0.5000000   2.500000  2
[73]  {红豆吐司}                     => {蛋挞}         0.03333333 0.4000000   2.400000  2
[74]  {红豆吐司}                     => {纯牛奶}       0.05000000 0.6000000   2.400000  3
[75]  {豆浆}                         => {酥皮面包}     0.06666667 0.3076923   2.307692  4
[76]  {豆浆}                         => {肉松面包}     0.06666667 0.3076923   2.307692  4
[77]  {芝士蛋糕}                     => {豆浆}         0.03333333 0.5000000   2.307692  2
[78]  {黑森林蛋糕}                   => {奶茶}         0.05000000 0.5000000   2.307692  3
[79]  {虎皮蛋糕}                     => {奶茶}         0.05000000 0.5000000   2.307692  3
[80]  {虎皮蛋糕}                     => {豆浆}         0.05000000 0.5000000   2.307692  3
[81]  {汉堡包}                       => {豆奶}         0.05000000 0.5000000   2.307692  3
[82]  {汉堡包}                       => {奶茶}         0.05000000 0.5000000   2.307692  3
[83]  {酥皮面包}                     => {豆浆}         0.06666667 0.5000000   2.307692  4
[84]  {肉松面包}                     => {豆浆}         0.06666667 0.5000000   2.307692  4
[85]  {法棍,咖啡}                    => {豆浆}         0.03333333 0.5000000   2.307692  2
[86]  {热狗,三明治}                  => {豆奶}         0.03333333 0.5000000   2.307692  2
[87]  {热狗,三明治}                  => {奶茶}         0.03333333 0.5000000   2.307692  2
[88]  {纯牛奶,热狗}                  => {三明治}       0.03333333 0.4000000   2.181818  2
[89]  {牛角面包}                     => {咖啡}         0.03333333 0.4000000   2.000000  2
[90]  {芝士蛋糕}                     => {纯牛奶}       0.03333333 0.5000000   2.000000  2
[91]  {热狗,三明治}                  => {纯牛奶}       0.03333333 0.5000000   2.000000  2
[92]  {热狗}                         => {三明治}       0.06666667 0.3636364   1.983471  4
[93]  {三明治}                       => {热狗}         0.06666667 0.3636364   1.983471  4
[94]  {肉松面包}                     => {咖啡}         0.05000000 0.3750000   1.875000  3
[95]  {咖啡}                         => {肉松面包}     0.05000000 0.2500000   1.875000  3
[96]  {法棍}                         => {豆奶}         0.03333333 0.4000000   1.846154  2
[97]  {法棍}                         => {豆浆}         0.03333333 0.4000000   1.846154  2
[98]  {热狗}                         => {纯牛奶}       0.08333333 0.4545455   1.818182  5
[99]  {纯牛奶}                       => {热狗}         0.08333333 0.3333333   1.818182  5
[100] {榴莲千层}                     => {纯牛奶}       0.06666667 0.4444444   1.777778  4
[101] {纯牛奶}                       => {榴莲千层}     0.06666667 0.2666667   1.777778  4
[102] {提子土司}                     => {咖啡}         0.03333333 0.3333333   1.666667  2
[103] {蒜香芝士面包}                 => {咖啡}         0.03333333 0.3333333   1.666667  2
[104] {提拉米苏}                     => {咖啡}         0.03333333 0.3333333   1.666667  2
[105] {红豆酥皮面包}                 => {纯牛奶}       0.03333333 0.4000000   1.600000  2
[106] {蒜香芝士面包}                 => {豆奶}         0.03333333 0.3333333   1.538462  2
[107] {蒜香芝士面包}                 => {奶茶}         0.03333333 0.3333333   1.538462  2
[108] {蒜香芝士面包}                 => {豆浆}         0.03333333 0.3333333   1.538462  2
[109] {提拉米苏}                     => {豆浆}         0.03333333 0.3333333   1.538462  2
[110] {榴莲千层}                     => {豆奶}         0.05000000 0.3333333   1.538462  3
[111] {酥皮面包}                     => {蛋挞}         0.03333333 0.2500000   1.500000  2
[112] {肉松面包}                     => {纯牛奶}       0.05000000 0.3750000   1.500000  3
[113] {三明治}                       => {纯牛奶}       0.06666667 0.3636364   1.454545  4
[114] {纯牛奶}                       => {三明治}       0.06666667 0.2666667   1.454545  4
[115] {蛋挞}                         => {奶茶}         0.05000000 0.3000000   1.384615  3
[116] {肉松面包}                     => {热狗}         0.03333333 0.2500000   1.363636  2
[117] {肉松面包}                     => {三明治}       0.03333333 0.2500000   1.363636  2
[118] {热狗}                         => {咖啡}         0.05000000 0.2727273   1.363636  3
[119] {咖啡}                         => {热狗}         0.05000000 0.2500000   1.363636  3
[120] {黑森林蛋糕}                   => {纯牛奶}       0.03333333 0.3333333   1.333333  2
[121] {热狗}                         => {奶茶}         0.05000000 0.2727273   1.258741  3
[122] {三明治}                       => {奶茶}         0.05000000 0.2727273   1.258741  3
[123] {小麦土司}                     => {奶茶}         0.03333333 0.2500000   1.153846  2
[124] {咖啡}                         => {豆浆}         0.05000000 0.2500000   1.153846  3
[125] {}                             => {纯牛奶}       0.25000000 0.2500000   1.000000 15

六、去掉冗余

# subset.matrix<-is.subset(rules,rules)#生成一个所有规则的子集矩阵,行和列分别是每条rules,其中的值是TRUE和FALSE,当rules2是rules1的子集时,rules2在rules1的值为TRUE
# subset.matrix[lower.tri(subset.matrix,diag=T)]<-NA#将矩阵对角线以下的元素置为空,只保留上三角
# redundant<-colSums(subset.matrix,na.rm=T)>=1#R会将矩阵中的TRUE当做1,统计每列的和(忽略缺失值),如果该列的和大于等于1,也就是表示该列(规则)是别的规则的子集,应该删除。
# rules.pruned<-rules[!redundant]#去掉冗余的规则
subset.matrix <- is.subset(RulesRep, RulesRep)
subset.matrix[lower.tri(subset.matrix, diag=T)] <- NA
redundant <- colSums(subset.matrix, na.rm=T) >= 1
RulesRep.pruned <- RulesRep[!redundant]
RulesRep<-RulesRep.pruned

暂未实现–求大神帮助

> subset.matrix <- is.subset(RulesRep, RulesRep)
Error in length(y) : Method length not implemented for class rules

七、关联规则可视化

library(arulesViz)
library(grid)
library(Matrix)
plot(RulesRep,measure = c("support","confidence"),shading="lift")
plot(RulesRep)
plot(RulesRep,interactive=TRUE)

暂未实现–求大神帮助

> plot(RulesRep,measure = c("support","confidence"),shading="lift")
Error in length(x) : Method length not implemented for class rules
> plot(RulesRep)
Error in length(x) : Method length not implemented for class rules
> plot(RulesRep,interactive=TRUE)
Error in length(x) : Method length not implemented for class rules
>

八、计算各个项集的出现频率(支持度)

#计算各个项集的出现频率(支持度)
itemFrequency(TransRep)
> #计算各个项集的出现频率(支持度)
> itemFrequency(TransRep)纯牛奶         蛋挞         豆浆         豆奶         法棍       汉堡包   黑森林蛋糕 红豆酥皮面包     红豆吐司     虎皮蛋糕 0.25000000   0.16666667   0.21666667   0.21666667   0.08333333   0.10000000   0.10000000   0.08333333   0.08333333   0.10000000 咖啡     榴莲千层     抹茶蛋糕         奶茶     牛角面包         热狗     肉松面包       三明治     酥皮面包 蒜香芝士面包 0.20000000   0.15000000   0.05000000   0.21666667   0.08333333   0.18333333   0.13333333   0.18333333   0.13333333   0.10000000 提拉米苏     提子土司     小麦土司     芝士蛋糕 0.10000000   0.10000000   0.13333333   0.06666667

九、提取规则中支持度、置信度、提升度

#quality()函数提取规则中支持度、置信度、提升度
quality(RulesRep)
> #quality()函数提取规则中支持度、置信度、提升度
> quality(RulesRep)support confidence      lift count
1   0.25000000  0.2500000  1.000000    15
2   0.03333333  0.6666667  3.076923     2
3   0.03333333  0.4000000  3.000000     2
4   0.03333333  0.2500000  3.000000     2
5   0.03333333  0.4000000  2.000000     2
6   0.03333333  0.5000000  6.000000     2
7   0.03333333  0.4000000  6.000000     2
8   0.03333333  0.5000000  3.333333     2
9   0.03333333  0.5000000  2.307692     2
10  0.03333333  0.5000000  2.000000     2
11  0.03333333  0.4000000  3.000000     2
12  0.03333333  0.2500000  3.000000     2
13  0.03333333  0.4000000  1.600000     2
14  0.05000000  0.5000000  2.307692     3
15  0.03333333  0.3333333  1.333333     2
16  0.03333333  0.4000000  2.400000     2
17  0.05000000  0.6000000  2.400000     3
18  0.03333333  0.2500000  1.153846     2
19  0.03333333  0.4000000  3.000000     2
20  0.03333333  0.2500000  3.000000     2
21  0.06666667  0.8000000  4.000000     4
22  0.06666667  0.3333333  4.000000     4
23  0.03333333  0.4000000  1.846154     2
24  0.03333333  0.4000000  1.846154     2
25  0.03333333  0.3333333  3.333333     2
26  0.03333333  0.3333333  3.333333     2
27  0.03333333  0.3333333  3.333333     2
28  0.03333333  0.3333333  3.333333     2
29  0.03333333  0.3333333  3.333333     2
30  0.03333333  0.3333333  3.333333     2
31  0.03333333  0.3333333  1.666667     2
32  0.06666667  0.6666667  3.076923     4
33  0.06666667  0.3076923  3.076923     4
34  0.03333333  0.3333333  3.333333     2
35  0.03333333  0.3333333  3.333333     2
36  0.03333333  0.3333333  1.666667     2
37  0.03333333  0.3333333  1.538462     2
38  0.03333333  0.3333333  1.538462     2
39  0.03333333  0.3333333  1.538462     2
40  0.05000000  0.5000000  2.727273     3
41  0.05000000  0.2727273  2.727273     3
42  0.03333333  0.3333333  1.666667     2
43  0.03333333  0.3333333  1.538462     2
44  0.03333333  0.3333333  2.500000     2
45  0.03333333  0.2500000  2.500000     2
46  0.05000000  0.5000000  2.307692     3
47  0.05000000  0.5000000  2.307692     3
48  0.05000000  0.5000000  2.307692     3
49  0.05000000  0.5000000  2.307692     3
50  0.03333333  0.2500000  1.500000     2
51  0.05000000  0.3750000  2.812500     3
52  0.05000000  0.3750000  2.812500     3
53  0.06666667  0.5000000  2.307692     4
54  0.06666667  0.3076923  2.307692     4
55  0.05000000  0.3000000  1.384615     3
56  0.03333333  0.2500000  1.363636     2
57  0.03333333  0.2500000  1.363636     2
58  0.05000000  0.3750000  1.875000     3
59  0.05000000  0.2500000  1.875000     3
60  0.06666667  0.5000000  2.307692     4
61  0.06666667  0.3076923  2.307692     4
62  0.05000000  0.3750000  1.500000     3
63  0.05000000  0.3333333  1.538462     3
64  0.06666667  0.4444444  1.777778     4
65  0.06666667  0.2666667  1.777778     4
66  0.06666667  0.3636364  1.983471     4
67  0.06666667  0.3636364  1.983471     4
68  0.05000000  0.2727273  1.363636     3
69  0.05000000  0.2500000  1.363636     3
70  0.05000000  0.2727273  1.258741     3
71  0.08333333  0.4545455  1.818182     5
72  0.08333333  0.3333333  1.818182     5
73  0.05000000  0.2727273  1.258741     3
74  0.06666667  0.3636364  1.454545     4
75  0.06666667  0.2666667  1.454545     4
76  0.05000000  0.2500000  1.153846     3
77  0.03333333  1.0000000  4.000000     2
78  0.03333333  1.0000000  4.615385     2
79  0.03333333  0.6666667 10.000000     2
80  0.03333333  1.0000000  5.000000     2
81  0.03333333  0.5000000  3.750000     2
82  0.03333333  0.6666667  8.000000     2
83  0.03333333  0.5000000  2.307692     2
84  0.03333333  1.0000000  5.000000     2
85  0.03333333  0.6666667  8.000000     2
86  0.03333333  1.0000000 10.000000     2
87  0.03333333  1.0000000 10.000000     2
88  0.03333333  1.0000000 10.000000     2
89  0.03333333  1.0000000  4.615385     2
90  0.03333333  0.5000000  5.000000     2
91  0.03333333  1.0000000 10.000000     2
92  0.03333333  1.0000000  4.615385     2
93  0.03333333  0.5000000  5.000000     2
94  0.03333333  0.6666667  6.666667     2
95  0.03333333  1.0000000  4.615385     2
96  0.03333333  1.0000000 10.000000     2
97  0.03333333  0.6666667  6.666667     2
98  0.03333333  1.0000000  4.615385     2
99  0.03333333  0.6666667  5.000000     2
100 0.03333333  0.5000000  5.000000     2
101 0.03333333  0.6666667  3.076923     2
102 0.03333333  0.5000000  3.750000     2
103 0.03333333  0.5000000  3.750000     2
104 0.03333333  1.0000000  4.000000     2
105 0.03333333  0.6666667  3.636364     2
106 0.03333333  0.4000000  3.000000     2
107 0.03333333  0.6666667  3.076923     2
108 0.03333333  0.5000000  2.500000     2
109 0.03333333  0.6666667  5.000000     2
110 0.03333333  1.0000000  4.000000     2
111 0.03333333  0.5000000  2.727273     2
112 0.03333333  0.4000000  2.666667     2
113 0.03333333  0.5000000  2.307692     2
114 0.03333333  1.0000000  5.454545     2
115 0.03333333  1.0000000  5.454545     2
116 0.03333333  0.5000000  2.307692     2
117 0.03333333  0.6666667  3.636364     2
118 0.03333333  0.6666667  3.636364     2
119 0.03333333  0.5000000  2.000000     2
120 0.03333333  0.4000000  2.181818     2
121 0.03333333  0.5000000  2.727273     2
122 0.03333333  1.0000000  4.615385     2
123 0.03333333  1.0000000 10.000000     2
124 0.03333333  1.0000000 10.000000     2
125 0.03333333  1.0000000 10.000000     2

十、规则匹配

# %in%是精确匹配,items %in% c("A", "B")表示 lhs+rhs的项集并集中,至少有一个item是在c("A", "B")。  item = Aor item = B
# 如果仅仅想搜索lhs或者rhs,那么用lhs或rhs替换items即可。如:lhs %in% c("yogurt")
# %pin%是部分匹配,也就是说只要item like '%A%' or item like '%B%'
# %ain%是完全匹配,也就是说itemset has ’A' and itemset has ‘B'
#subset函数
#subset
rules.subset = subset(RulesRep,subset = lhs%pin%"蛋挞"&lift>=1.0)
inspect(rules.subset)
> #subset
> rules.subset = subset(RulesRep,subset = lhs%pin%"蛋挞"&lift>=1.5)
> inspect(rules.subset)#无符合条件规则
> # %in%是精确匹配,items %in% c("A", "B")表示 lhs+rhs的项集并集中,至少有一个item是在c("A", "B")。  item = Aor item = B
> # 如果仅仅想搜索lhs或者rhs,那么用lhs或rhs替换items即可。如:lhs %in% c("yogurt")
> # %pin%是部分匹配,也就是说只要item like '%A%' or item like '%B%'
> # %ain%是完全匹配,也就是说itemset has ’A' and itemset has ‘B'
> #subset
> rules.subset = subset(RulesRep,subset = lhs%pin%"蛋挞"&lift>=1.0)
> inspect(rules.subset)lhs       rhs    support confidence lift     count
[1] {蛋挞} => {奶茶} 0.05    0.3        1.384615 3
>

R语言小代码(商品零售购物篮分析)相关推荐

  1. 数据挖掘实战—商品零售购物篮分析

    文章目录 引言 一.数据探索性分析 1.数据质量分析 1.1 缺失值分析 1.2 异常值分析 1.3 重复数据分析 2.数据特征分析 2.1 描述性统计分析 2.2 分布分析 2.2.1 商品热销情况 ...

  2. python数据分析与挖掘实战(商品零售购物篮分析)

    一.引言 购物篮分析是商业领域最前沿.最具挑战性的问题之一,也是许多企业重点研究的问题.购物篮分析是通过发现顾客在一次购买行为中放入购物篮中不同商品之间的关联,研究顾客的购买行为,从而辅助零售企业制定 ...

  3. R语言小代码6(股票数据分析)

    任务:一:请举例说明R语言如何读取Excel中不同工作表中的文件 创建一个excel文件,给不同的sheet命名:下载readxl包,使用read_xlsx方法,注明路径和sheet名字,就能读取不同 ...

  4. R语言小代码7(流程控制练习)

    任务:计算等额本金还款和等额本息还款 小张贷款100万购买房子,贷款利率为4.9%(年利率),贷款期限20年. 1)用循环执行语句(for或者while),分别计算等额本金还款和等额本息还款的每月偿还 ...

  5. 使用Apriori关联规则算法实现购物篮分析

    Apriori算法是一种挖掘关联规则的频繁项集算法,其核心思想是通过候选集生成和情节的向下封闭检测两个阶段来挖掘频繁项集,而且算法已经被广泛的应用到商业,网络安全等各个领域. 购物篮分析是通过发视频顾 ...

  6. 关联算法①——《啤酒与尿布》购物篮分析

    关联算法系列目录: 关联算法②--Apriori算法原理及python实现 关联算法③--Apriori算法实现主播关联度分析 关联算法是通过支出度,置信度,提高度三个指标,寻找有相关性的商品或其它物 ...

  7. R语言关联规则(购物篮分析)

    在R中,可以用来进行购物篮分析的软件包是arules:挖掘关联规则和频繁集.这个R包提供了两种不同的关联规则发现方法.这个R包支持Apriori算法和ECLAT算法.还有其他算法可以进行购物篮分析,但 ...

  8. 购物篮分析( Apriori算法)—零售数据实战

    购物篮分析( Apriori算法)-零售数据实战 [开题]在我从事零售行业的期间,曾拜读过"啤酒与尿布"一书,对于沃尔玛的购物篮分析模型产生极大的兴趣.由于网上对Aprioro算法 ...

  9. 啤酒和尿不湿?购物篮分析、商品关联分析和关联规则算法都给你搞清楚(上—理论篇)

    不管是不是搞数据分析的,相信应该都听过啤酒尿不湿的故事,说的是美国的沃尔玛超市管理人员分析销售数据时发现了一个令人难以理解的现象:"啤酒"与"尿布湿"这两件看上 ...

最新文章

  1. 服务运行一段时间,redis缓存就不可用,原来是这个锅!
  2. java junit 运行_appium+java+junit demo运行
  3. DL动态加载框架技术
  4. 【Android】 Android中spinner下拉列表的使用
  5. 后端学习 - RabbitMQ
  6. 95-10-200-启动-结尾
  7. 电商数据库设计及架构优化实战(一) - 制定数据库开发规范
  8. SpringBoot2.x 官方墙裂推荐的缓存框架,竟然不是Redis!
  9. xshell和xftp免费版下载地址
  10. 2021年下半年软考-网络工程师答案及解析(中级)
  11. matlab geodetic2ecef,卫星轨道问题
  12. 富爸爸穷爸爸 (全球最佳财商教育系列)——2019年04月18日15:25:56
  13. 哔哩哔哩2020校园招聘前端笔试卷(一)答案解析
  14. chmod +x 与chmod 777的区别
  15. Android日历只显示年月,只显示年
  16. 树莓派+花生壳+移动硬盘搭建下载机
  17. 【Axure视频教程】锚链接菜单
  18. 编写AIC工艺参数计算Matlab程序(疯狂踩坑)
  19. 前端七十二变之javascript高级
  20. 网上商城系统哪家好?

热门文章

  1. 【100%通过率】华为OD机试真题 JavaScript 实现【最小调整顺序次数】【2023 Q1 | 100分】
  2. vue3版本的爱心源码
  3. 2022.2.13短线买点
  4. 2015年国考行测错题集(省级)
  5. 互联网打工人的副业与B面生活
  6. 空指针引用故障(空指针解引用)
  7. 数字化转型时代 百年品牌OKI是如何跟进的?
  8. 提升代码质量,使用插件对 java 代码进行扫描检查分析
  9. 关于把cd转成mp3的文章
  10. 同文输入法 android,Trime(同文输入法)app安卓最新版下载-Trime输入法下载 - 欧普软件园...