前段时间参加了第四届泰迪杯数据分析技能赛,最终入围视频答辩,遗憾的是没有拿到最后的特等奖,止步一等奖,还是需要继续提升自己的能力💪!
文章目录
前言
泰迪杯数据分析技能赛的最终要求是提交一份数据分析报告,题目较简单,是小白锻炼自己的绝佳机会。接下来与大家分享B题的解题思路,水平有限,仅供参考╮(╯▽╰)╭。任务一
任务1.1解题思路
任务 1.1 附件 1 的产品通用名称存在不规范的情况。请按照复混肥料(掺混肥料归入这一类)、有机-无机复混肥料、有机肥料和床土调酸剂这 4 种类别对附件 1 进行规范化处理。请在报告中给出处理思路、过程及必要的结果,同时将完整的结果保存到文件“result1_1.xlsx”中。
原附件1中的通用名称共14种,任务1.1要求对其进行规范化处理,转换为4种类别。我们可利用原有的14种通用名称为桥梁,先将所有的数据按照名称划分为14类,然后根据题目所给的规范名称,分别将14个名称与与4个规范名称相对应,再将所有数据的名称转化为规范名称,进而完成所有数据名称的规范化,思路流程图如图所示。
根据上述方法将附件1中的肥料规范化,根据规范化后的结果,绘制4种肥料产品的数量统计图如图所示。
由图可知,在4种肥料产品中,复混肥料的数量最多,有2589样肥料产品,床土调酸剂的数量最少,仅有10样肥料产品。
任务1.2解题思路
任务 1.2 计算附件 1 中各肥料产品的氮、磷、钾养分百分比之和,称为总无机养分百分比。请在报告中给出处理思路、过程及必要的结果,同时将完整的结果保存到文件“result1_2.xlsx”中,结果保留 3 位小数(例如 1.0%,即 0.010)。
任务要求计算附件1中各肥料产品的氮、磷、钾养分百分比之和,即总无机养分百分比。根据题目所给的数据说明,得出总无机养分百分比的计算公式如下:
总
无
机
养
分
百
分
比
=
总
氮
百
分
比
+
P
2
O
5
百
分
比
+
K
2
O
百
分
比
总无机养分百分比=总氮百分比+P2O5百分比+K2O百分比
总无机养分百分比=总氮百分比+P2O5百分比+K2O百分比
根据公式可得出附件1中各肥料产品的总无机养分结果。根据结果绘制各肥料的总无机养分折线图,如图所示。
由图可知,在附件一的所有肥料产品中,总无机养分百分比的最大值为62%,最小值为5.01%,且大多数肥料产品的总无机养分百分比在0.4至0.5之间。
任务二
任务2.1解题思路
任务 2.1 从附件 2 中筛选出复混肥料的产品,将所有复混肥料按照总无机养分百分比的取值等距分为 10 组。根据每个产品所在的分组,为其打上分组标签(标签用 1~10 表示),将完整的结果保存到文件“result2_1.xlsx”中。分析复混肥料产品的分布特点,在报告中绘制产品登记数量的直方图,给出处理思路及过程,并按登记数量从大到小列出登记数量最大的前 3 个分组及相应的产品登记数量。
同任务一在对附件2进行检查处理后,发现并无缺失值与重复值,因此可根据任务要求直接对产品进行筛选,并将其等距分为10组,设相邻组别肥料产品的总无机养分百分比的差值为,所有肥料产品总无机养分百分比为,其计算公式如下:
D
=
(
Z
m
a
x
−
Z
m
i
n
)
/
10
D=(Z_{max}-Z_{min})/10
D=(Zmax−Zmin)/10
根据公式即可求得相邻组别肥料产品的距离为0.072,再由组别间的距离将附件2中的肥料产品划分成10个区域,并按区域的总无机养分百分比大小依次打上分组标签(1~10),最后以这10个区域的上下界为条件将复混肥料分为10个组。
绘制出含有各组复混肥料产品数量的直方图,其结果如图所示:
复混肥料产品的分布特点分析:
根据上图可得,复混肥料登记产品较多的组别为4、5、6、7、8,其总无机养分百分比区间为(0.216,0.576),说明总无机养分百分比在这个区间的复混肥料具有生产和应用价值,其中第7组的登记数量最多,区间为(0.432,0.504),说明总无机养分百分比处于此区间的的复混肥料最具有生产价值和应用价值。
而通过观察,发现其可能具有正态分布的特点,所以接下来可以用K-S检验等方法对其进行正态分布的检验(检验步骤略)。
任务2.2解题思路
任务 2.2 从附件 2 中筛选出有机肥料的产品,将产品按照总无机养分百分比和有机质百分比分别等距分为 10 组,并为每个产品打上分组标签 (1,1), (1,2),⋯, (10,10),将完整的结果保存到文件“result2_2.xlsx”中。请在报告中给出处理思路及过程,并根据分组情况绘制有机肥料产品的分布热力图,其中横轴代表总无机养分分组,纵轴代表有机质分组。在此基础上,分析有机肥料产品的分布特点,并按登记数量从大到小列出登记数量最大的前 3 个分组及相应的产品登记数量。
根据任务要求,可同任务2.1的方式分别将无机养分百分比和有机质百分比等距分为10组,分组区间如表3-3所示。再根据分组区间,将附件2中的有机肥料产品等距分为100组。
接着根据分组情况绘制有机肥料产品热力图,如图所示,其中横轴代表总无机养分分组,纵轴代表有机质分组。
有机肥料产品的分布特点分析:
根据图可观察出,几乎只有5个标签有较高的登记数量,主要分布在总无机养分百分比区间(0.0501,0.16407)和有机质百分比区间(0.45,0.72)上,其中标签(1,6)最多,登记数量为840个,远远的超过了其他标签的产品登记数量,说明总无机养分百分比在区间(0.0501,0.08809)、有机质百分比在区间(0.45,0.54)内的有机肥料最具生产价值和应用价值。
这里应该是可以做一个二维的正态分布检验,但我们没做,答辩的时候被问到了,很尴尬😅。。。
任务2.3解题思路
任务 2.3 从附件 2 中筛选出复混肥料的产品,按照氮、磷、钾养分的百分比,使用聚类算法将这些产品分为 4 类。根据聚类结果为每个产品打上聚类标签(标签用 1~4 表示),并将完整的结果保存到文件“result2_3.xlsx”中。请在报告中给出处理思路及过程,根据聚类标签绘制肥料产品的三维散点图和散点图矩阵,并通过绘制聚类结果的雷达图分析每个聚类的特征。
按照任务要求,需用聚类算法按照氮、磷、钾养分的百分比将其分为4类,由于给定了分类个数,因此本任务使用K-means聚类算法将更为快捷且准确。其算法流程图如下:
下面是三维散点图和散点图矩阵:
关于聚类就不多赘述了。
任务三
任务3.1解题思路
任务 3.1 从文件“result2_1.xlsx”中提取发证日期中的年份,分析比较复混肥料中各组别不同年份产品登记数量的变化趋势。请在报告中给出处理思路及分析过程,使用合适的图表对结果进行可视化。
首先根据任务要求利用pandas中的loc()函数,提取发证日期中的年份,然后根据各年各组的产品登记数量绘制出折线图,以直观的看出其变化趋势。最后构建随机森林模型拟合2012~2020年的数据,预测2021年的各组别产品登记数量来更好地展现各组别的变化趋势。绘制出的折线图如图所示:
变化趋势的分析比较:
根据上图可观察出,各组别在登记数量上具有较大差异,其中,在2012年到2017年,组别7的登记数量始终领先,说明在这个时间段,总无机养分百分比在区间为(0.432,0.504)内的复混肥料最具生产价值和应用价值,而在2018-2020年,虽然组别5的登记数量较为领先,但相比前两年的登记数量依旧再下滑,可看出虽然在产品登记数量上各组别有较大的差异,但是在变化趋势上各组别都呈现出先升后降的趋势,且在2015~2016间达到峰值,后面持续下降,而组别2与3的产品登记数量则一直最低,说明总无机养分百分比处于这一区间的复混肥料具有较低的生产价值。对于整个复混肥料的登记数量变化趋势来说,呈持续下滑趋势。
接着我是做了一个随机森林对2021年的数量进行预测,大家也可以用一些其他模型,或者其他方法对数据继续进行分析。
任务3.2解题思路
任务 3.2 从文件“result2_2.xlsx”中提取 2021 年 9 月 30 日仍有效的有机肥料产品,将完整的结果保存到文件“result3_2.xlsx”中。从有效产品中分别筛选出广西和湖北(根据正式登记证号区分)产品登记数量在前 5 的组别,分析两个省份上述组别的分布差异。请在报告中给出处理过程及分析结果。
首先根据题目要求,以2021年9月30日为限制条件提取有机肥料产品,然后根据提取后的数据筛选出广西和湖北产品登记数量在前5的组别。
分布差异的分析:
根据结果可看出,两个省份排名第一的标签都为(1,6),其都远超其他组别的产品登记数量,但湖北省除了标签(1,6),剩余组别的产品登记数量都极少,总共只占了5.1%,而广西省的剩余组别占了28.1%,说明湖北省几乎只用标签为(1,6)的有机肥料,而广西省除了大量使用(1,6)的有机肥料以外,还会使用部分其他标签的有机肥料,其原因可能是地域性和土壤差异。
任务3.3解题思路
任务 3.3 从附件 3 中提取产品登记数量大于 10 的肥料企业,给出这些企业所用到的原料集合(发酵菌剂除外)。以各企业用到的原料作为特征,计算企业之间的杰卡德相似系数矩阵,并将结果(保留4位小数)保存到文件“result3_3.xlsx”中(不提供模板文件,格式见表 1)。请在报告中给出处理思路、过程及相似系数矩阵。
首先根据题目要求,提取出产品等级数量大于10的肥料企业后,发现只有10家企业符合条件。
其次,根据各家企业生产的各产品的原料,去重后将其整理为10个含有各企业所用原料的集合,如下图所示:
最后,根据杰卡德相似系数定义公式求解得出得出相似系数矩阵,绘制相似系数热力图如下:
任务四
任务4.1解题思路
任务 4.1 设计算法或处理流程,从附件 4 技术指标中提取出氮、磷、钾养分和有机质的百分比,以及肥料含氯的程度。请在报告中给出处理思路及过程,并将结果保存到文件“result4_1.xlsx”中。
针对任务4.1主要使用正则表达式,从表格中提取需要的信息,具体流程如下所示。
任务4.2解题思路
任务 4.2 设计算法或处理流程,从附件 4 原料与百分比中提取各种原料的名称及其百分比。请在报告中给出处理思路及过程,并将结果保存到文件“result4_2.xlsx”中(参见表 2)。
针对任务4.2,主要使用字符串的replace()、split()函数进行替换和分隔,最终转化成目标格式,具体流程如下所示:
总结
以上就是就是B题的所有解题思路。总体来说,泰迪杯技能赛获奖难度较低,但想要获得特等奖还是需要一定的能力。小白一枚,如有问题欢迎大家讨论指正🙂。