2020数学建模美赛C题完整解答(结合代码)

今年的美赛在一次又一次的日夜颠倒中结束了,相信每个人,在付出极大努力之后,会有酣畅淋漓的快感,也会认识到自己的不足。

这次的c题是一个纯粹的数据挖掘的题

涉及到的 知识有:

  • 文本情感分析
  • 文本聚类(可选)
  • 关联分析
  • 拟合(或者神经网络预测)

美赛的难点之读题

看到老美的题,作为一个中国人,完全不能做到native speaker,看到题目的那一刻真的有一种“一万个人心中有一万个哈姆雷特的感觉”。所以下面我先解读一下题目,然后提出这个问题的解决思路和相应的代码。

第一大题:

题目意思是让你提出指标作为公司对产品的跟踪指标,可讨论分析的指标很多,自由发挥(并不是让你一上来就把整个模型建好!)

把各个数据用图表的形式展现一下,怎么好看怎么来。

第二大题:

a题

主要是将文本评价转化为量化数据,并融合到star_rating中,地出一个综合评判一个用户评价的综合指标(加权综合评分)

解决方法和思路:

利用每天的数据计算star_rating的总和,

统计每天往前的评论总数量作为销量的代理变量,star_rating的总和/满分为好评率

然后可以作图了:

数据的读入和处理可以用python的pandas工具,会用的话解决本题将事半功倍:

读入数据:

data = pd.read_csv('hair_dryer.tsv', sep='\t', header=0)
date = pd.read_csv('day_s.csv', header=0)

day_s.csv 这个文件是自己创建的时间序列,分开来读取处理数据比较方便,里面的数据大概是这样的(这是一小段):

mark

可以使用python或者excel作图,python的pandas也有画图的api,很方便:

最后会出来这样一张图,两条曲线我共用了一个y轴,因此star_rating 这条直线看上去像平的,这是不可取的,应当分别用不同的y轴

b题

观察时间序列上加权综合评分的变化情况

怎么去确定各个量之间的权重呢?

  • 主观赋权法
  • 熵权法
  • 灰度关联分析

这一块我觉得随便采用哪个都行,也没有什么明确的评判标准

还有一个思路是熵权法结合灰度关联分析

参考一下北京市的一次数学建模比赛:

mark

b题最后也会生成一个综合评分随时间的变化图:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值