数据来源
基于第二轮活动数据记录
记录格式如下,序号可代表整个进度使用骰子数量,次数代表各关卡使用骰子数量
library(readxl) # install.packages("readxl", repos = "https://mirrors.ustc.edu.cn/CRAN/")
df=read_xlsx('./data//回归分析.xlsx')
实际数据分析
- 描述性分析
从记录中可以看出,关卡1~4均完成至100%,分别使用骰子数量为,13、14、57、204
在关卡5中使用骰子数量253,完成进度为26.83%。
ggplot2绘图
library(ggplot2)
df$关卡<-factor(df$关卡)
ggplot(data=df,aes(x = 序号, y = 进度))+
geom_point()+xlim(0,600)+aes(colour=关卡)+xlab("累计次数")+ylab("进度(%)")+
coord_fixed(ratio = 3)+
ggtitle(label='骰子使用次数与各关卡进度的关系',subtitle = NULL)+
theme(plot.title = element_text(#color = 'red',
size=15,
hjust=0.5),
plot.caption = element_text(color='blue'))
从各自斜率可以看出各关卡的难易程度(目前已使用骰子的大致数量541)
进行回归分析
由于关卡1~4都已经完成,因此重点分析关卡5完成的可行性以及需要多少骰子数量才能完成进度至100%
回归分析
从模型中可以看出在第五关卡中,使用骰子数量与进度的关系为:
y=0.1060725*x-0.2021598
当进度y=100时,可以计算得到使用骰子数量:x=944.657284404535
par(pin = c(6,4))
plot(df5$次数,df5$进度,
xlab="骰子次数(实际次数或预估次数)",
ylab="进度(%)",
xlim=c(0,1000),ylim=c(0,100),
main="关卡5需要的骰子数量",
col=c('red')
)
abline(fit5)
abline(h=100)
abline(v=945)
text(x = 700,y = 63,labels = 'y=0.1060725*x-0.2021598')
text(x = 955,y = 50,labels = 'x=945')
关卡5与累计骰子使用次数的关系分析即(1~5需要骰子数量)
fit<-lm(data=df5,进度~序号)
summary(fit)
从分析结果我们可以得到关卡5进度与累计投资使用数量的关系为
y=1.061e-01*x--3.075e+01
当y=100时,计算得使用累计使用骰子为:x=1232.32799245994
par(pin = c(6,4))
plot(df$序号,df$进度,
xlab="累计次数(实际或预估次数)", #x轴名称
ylab="进度(%)", #y轴名称
xlim=c(0,1500),ylim=c(0,100),
main="累计骰子使用次数与进度的关系",
col=df$关卡
)
abline(h=100)
abline(fit)
abline(v=1232)
text(x = 900,y = 63,labels = 'y=1.061e-01*x--3.075e+01')
text(x = 1232,y = 50,labels = 'x=1232')
legend(1300,95,inset = 0.04,c(paste0("关卡", 1:5)),pch = c(1),
col = c("black","red","chartreuse","blue","aquamarine4"),box.col = "red", title="关卡",
box.lwd = 2,text.font = 1)
可视化分析结果
结论
关卡5大约需要使用骰子数量为945,完成1~5关卡则需要使用骰子数量为1232