APP下载

基于Power Query的2017年天津市食品地方抽检数据分析

2018-06-20钱子琪大连理工大学食品与环境学院

食品安全导刊 2018年15期
关键词:天津市合格水分

□ 钱子琪 大连理工大学食品与环境学院

1 抽检总述

天津市与其他省级行政区的地方抽检格式不同,每次抽检按照日期命名,每一次抽检报文的HTML页面内,按照食品种类分别提供2~25个不等的各品类下载资源指针,单击指针后会以“*.xls”文件(“*”代表统配符)的格式下载到客户端。相对繁杂的数据结构使以串行流水线作业方式处理数据变得异常复杂,尤其是在各个分表的数据融合(merge)过程中,其占据了整套流水线时间资源的80%。所以,针对这类问题,采用并行的方式处理更节约人力资源,也能发挥计算机的并行功能,加速比大约为原先使用方法的10倍以上。

本次高速数据处理采用模仿Internet Download Manager软件的含有三次握手的可靠性分布式文件切割传输原理,通过自建Windows家庭组局域网(Home Group)的共享文件功能,完成所有报表的下载。再使用Microsoft Office 2016软件中自带的Power Query插件[1]完成数据清洗,数据输出。最终得出结论:天津市2017年食药监局食品地方抽检,在除去重复数据和无效数据后,共有13 821批次的数据,合格批次13 714次,不合格批次107次,合格率高达99.23%。由于无法像其他省按期统计数据,故用抽检月份作为分类依据。将抽检类别和合格与否分别作为行列的数据透视图,得出不合格频次排列前十的食品种类如表1所示。

2 问题分析

2.1 抽检不合格出现次数是否与季节相关

2.1.1 数据处理过程

按照何梓菱等人的动态权值法[2],根据上文的按月和合格与否的数据透视图,做出按月份统计抽检样本的散点-柱状组合图(图1),可以初步判断出在春夏季时,不合格率有大幅提升。

表1 排列前十的不合格食品种类的频次

图1 按月份统计抽检样本的散点-柱状组合图

随后,手工将比例型数据导入SPSS Statistics 24.0软件,变聚类距离测量算法为“Pearson相关性”等,计算验证,系谱树(图2)未见季节和不合格率有因果关系。

2.1.2 原因分析

从食品保藏的栅栏因子来看,在夏季食品出现腐败变质的概率增大,从按月份统计抽检样本的散点-柱状组合图(图1)的条形子图中也可以看出,8月的抽检量对比前几个月有显著性差异。使用每月抽检量做聚类分析,验证了以上分析结果。但是,12月的抽检量和其他月份有最显著性差异。结合食药监局的非抽检报文内容,天津市在各个区、县开展了高强度的抽检活动,然而有许多失效、重复数据,对机器学习的分析过程有很强的干扰作用,故无法辨伪此问题。

2.2 农产品不合格频次高的原因

2.2.1 数据处理过程

使用Power Query从本地文件夹数据库建立新查询,利用面向对象的专用M代码解包数据集合体(unity),删除无关信息,再用筛选命令清洗出不合格农产品类数据,包括粮食加工品1批次和食用农产品28批次,并按不合格原因分类汇总成农产品类抽检不合格项目分布图(图3)。其中水分超标的比例高达50%,其次高频原因为克伦罗特的检出,但其占比不足水分超标样本的二分之一。其他不合格原因占比均不足10%,分别是恩诺沙星(以恩诺沙星与环丙沙星之和计)超标占7%,呋喃西林代谢物检出占3%,氟苯尼考检出占7%,强力霉素检出占7%,氯霉素检出占3%和标签不合格占3%。每一批次不合格农产品都只有一种不合格原因。如果把几种兽药看作一大类,几乎与水分超标比率持平。

2.2.2 分析

水分和兽药残留的总比例高达97%,但是在总抽检样本中比例偏小,总不合格样本量也不足30,属于小规模样本。这从侧面说明,天津市的食品生产情况良好,但在粮食加工和存储过程中还可以改进流程。

2.3 其他结论

在全年抽检的不合格的107例数据的条形图(图4)中,仅有2例不合格产品存在两个原因,其余均为一种不合格原因。其中不合格原因主要集中在标签规格和水分含量上,共计58例。问题的解决依赖标签生产和贴标技术的监管。此外,兽药的使用也需要更多的控制和管理。

图2 聚类分析树

图3 农产品抽检不合格项目分布图

图4 不合格原因条形图

3 对数据库的管理分析

按照软件工程分类,每个抽检数据是一条记录,记录中含有“样品名称”“规格”“类别”等信息;每个文档也是一条庞大的记录,每一期的抽检文件都可构成总抽检文库。其数据结构具有相似性,因此,可以构建本地离线数据库进行管理分析。

3.1 分析过程

按照数据流图(图5)的结构,使用Power Query对每份文件进行数据提取,放入不同的数据库,再根据用户需求情况,提取所需数据封装成为报表输出,也可以使用VBA实现。

图5 Power Query内的数据流动情况

3.2 程序运行过程

导入全年抽检数据所在文件夹,并删去无关信息;利用M代码提出每个文件的每一条记录;筛选出需要的文件和信息;删除无效信息后,“关闭并上载”,得到报表。

4 结语

在利用软件对食品抽检分析中,极端样本量对结果影响巨大,所以要出去极端值。除去极端值后,天津市食品抽检的合格率高于同期河北省、云南省等省份,在不合格原因上,食品本身的化学、物理、机械性质表现良好,标签这一外部因素成为制约其合格率继续提升的最大原因,其次为植物性农产品的水分和动物性农产品的兽药残留。

[1]Chris Webb. Power Query and Power BI for Office 365[M].Berkeley:Apress,2014.

[2]何梓菱,王哲,周李,等.基于动态权值的食品抽检方法[J].数学建模及其应用,2013(Z1):4-12,45.

猜你喜欢

天津市合格水分
有趣的云
如果画笔会说话?
减盐不如减水分
天津市第三届“未来之星”初中数学邀请赛
我是合格的小会计
做合格党员
完形填空Ⅳ
句子的合格与不合格
天津市排水专项规划简介