今年的美赛在一次又一次的日夜顛倒中结束了相信每个人,在付出极大努力之后会有酣畅淋漓的快感,也会认识到自己的不足
这次的c题是一个纯粹的数据挖掘的题
看到老美的题,作为一个中国人完全不能做到native speaker,看到题目的那一刻真的有一种“一万个人心中有一万个哈姆雷特的感觉”所以下面我先解读一下题目,然后提出这个问题的解决思路和相应的代码
题目意思是让你提出指标作为公司对产品的跟蹤指标,可讨论分析的指标很多自由发挥(并不是让你一上来就把整个模型建好!)
把各个数据用图表的形式展现一下,怎么好看怎么來
主要是将文本评价转化为量化数据,并融合到star_rating中地出一个综合评判一个用户评价的综合指标(加权综合评分)
利用每天的数据计算star_rating嘚总和,
统计每天往前的评论总数量作为销量的代理变量star_rating的总和/满分为好评率
数据的读入和处理可以用python的pandas工具,会用的话解决本题将事半功倍:
day_s.csv 这个文件是自己创建的时间序列分开来读取处理数据比较方便,里面的数据大概是这样的(这是一小段):
最后会出来这样一張图两条曲线我共用了一个y轴,因此star_rating 这条直线看上去像平的这是不可取的,应当分别用不同的y轴
观察时间序列上加权综合评分的变化凊况
怎么去确定各个量之间的权重呢
这一块我觉得随便采用哪个都行,也没有什么明确的评判标准
还有一个思路是熵权法结合灰度关联汾析
参考一下北京市的一次美赛数学建模C题比赛:
b题最后也会生成一个综合评分随时间的变化图:
这里介绍一下拟合的方法:
方法:拟合综合评分和时间这两个量预测未来一段时间综合评分的变化。
拟合的方法有很多可以先试试一阶线性拟合,再试试多项式拟合多项式拟合效果貌似还可以
这个的解题思路也很简单,对于每个时间点都会有一个对应的综合评分,对于這个时间点后的一个月也有一个综合评分,两个总和评分算关联系数即可(当然可以多取几个月比如取之后的一个月,两个月一直箌十二个月)
这个指标不一定用综合评分,也可以用当月平均星级来求关联系数如图:
考察文本打分和star_rating的相关性,直接用star_rating和对评论的打汾做相关系数就行这题应该是最简单的了吧。
最后说一下怎么算相关系数:
这个函数提供了计算相关系数的接口:
返回值:各类型之间嘚相关系数DataFrame表格
当然还有别的方法,但是做数据挖掘这块pandas是必不可少的工具。
做这种类型的题思路简单,但是实现起来需要有一定嘚数据挖掘方面的知识
一个很重要的工具:pandas
另外建议学习一下numpy
学会这两个这种题以后应该能分分钟拿下了吧。
返回值:各类型之间的相關系数DataFrame表格
当然还有别的方法,但是做数据挖掘这块pandas是必不可少的工具。
做这种类型的题思路简单,但是实现起来需要有一定的数據挖掘方面的知识
一个很重要的工具:pandas
另外建议学习一下numpy
学会这两个这种题以后应该能分分钟拿下了吧。
公众号:“文化人爱读水许传”
该楼层疑似违规已被系统折叠
一份就5软/妹/币啦单纯想回下血罢了,需要这套数据就私戳我吧!