零代码+回归直线斜率,分析数据波动

文/王孟晓 邹居宸 冯宏伟

编辑/麦壁瑜

背景介绍

  1. 什么是数据波动

在生产生活过程中,我们经常会遇到同一件事情随着时间这一变量的变动而发生改变,以销量为例,某店铺连续的四个月销售额分别为89.39万,84.42万,82.78万,84.44万。

从这组数据可以得出什么样的结论呢?该店铺销量不稳定,但是只得到一个“不稳定”的结论显然是不够有说服力的。接下来我们来探讨如何量化这种不稳定的波动,从而得到更有效的信息。

  1. 线性回归

在统计学中,线性回归(Linear Regression)是利用称为线性回归方程的最小平方函数对一个或多个自变量和因变量之间关系进行建模的一种回归分析。

线性回归是回归分析中第一种经过严格研究并在实际应用中广泛使用的类型。这是因为线性依赖于其未知参数的模型比非线性依赖于其未知参数的模型更容易拟合,而且产生的估计的统计特性也更容易确定。

一条趋势线代表着时间序列数据的长期走势。它告诉我们一组特定数据(如GDP、石油价格和股票价格)是否在一段时期内增长或下降。虽然我们可以用肉眼观察数据点在坐标系的位置大体画出趋势线,更恰当的方法是利用线性回归计算出趋势线的位置和斜率。

接下来我们从斜率入手,看一看零代码如何实现线性回归的计算。

系统实现

回归直线斜率的计算公式

基于线性回归的定义,此处x为该销售额对应的月份,y为销售额。我们需要在明道中运算的基本内容有:每月销售额的平均值、月份的平均值、每月销售额减平均值、月份减月份的平均值。

拆解运算过程,使用公式和汇总字段

根据上述计算公式,我们需要设计好能进行计算的系统架构。我们将月销量存在每月销量表单当中,对于数据的分析采用另一张分析表来计算,将月销量表和数据分析表建立双向关联,首先运用汇总字段求出销量总额的平均值和月份的平均值两项。

图.利用汇总字段计算平均值

随后利用他表字段(存储数据)将平均值同步回月销量表当中。

图.他表字段存储数据

在月销量表中用公式字段计算出分子上的两项数值减去平均值,再利用一个公式字段求出两个结果的乘积。

图.运用公式得到分子乘积

这样就得到了分子上的数值,接下来要做的是求和。这个时候再次在数据分析表上运用汇总字段,对月销量表中的分子乘积进行求和。

图.计算分子的最终结果

分母同理,在月销量表上用公式字段计算月份数值减去平均值后的平方值,之后在数据分析表上使用汇总字段,这样又得到了分母的最终值。

图.计算分母的最终结果

接下来只要再用一个公式让分子/分母,我们就得到了这组数据对应的线性回归直线斜率。

图.最终计算出线性回归的斜率
解除局限,使用代码块直接运算

拆解步骤由于汇总字段的限制,面对数据量较大的情况可能无法处理,并且配置较为复杂,所以我们此处提供一种进阶方式供极客使用。获取到各月的销量封装到数组,之后将数组输入到接下来的这个代码块当中,代码块会自动计算出该组数据的斜率。

var score=JSON.parse(input.score);
var arrlen=score.length;

var sumX=0;
var sumY=0;
var averageX=0;
var averageY=0;
for (var i=0;i<arrlen;i++)
{
  sumX=sumX+i+1;
  sumY=sumY+score[i];
}
averageX=sumX/arrlen;
averageY=sumY/arrlen;

var sigmaX=0;
var sigmaY=0;

for (var i=0;i<arrlen;i++)
{
 var n=(i+1-averageX)*(score[i]-averageY);
 sigmaX=sigmaX+n;
 
 var m=(i+1-averageX)**2;
 sigmaY=sigmaY+m;
}

var slope=sigmaX/sigmaY;
output = {X:averageX,Y:averageY,sigmaX:sigmaX,sigmaY:sigmaY,slope:slope};

总结与思考

斜率的计算只是线性回归分析的第一步,但也是非常重要的一步,之后对于回归线的构建,数据的分析都离不来这最初的一步。

利用斜率和标准差的组合,可以计算出波动值,波动比例,变异系数等数据波动的量化值,也可以计算出数据走向趋势的预测值。通过这些明确的数值可以分析出企业最近的运行状况,及时发现数据中隐含的价值与风险。

图.一组通过明道云控件运算分析出的数据

零代码从诞生之初起就被质疑无法实现复杂的场景,但是笔者认为大部分的复杂场景都可以被拆解为几个场景的组合。看似无法下手的斜率计算在经过拆解之后可以清晰的梳理成分步的运算过程,利用基本组件的拼装实现。

此外,零代码和代码在明道云上实现了殊途同归,我们也为开发者提供高效的代码处理模式,真正让开发工具和能力得到了充分的利用。

关于明道云

明道云(www.mingdao.com)成立于2013年,位于上海,创始人为互联网知名人士任向晖先生。明道云是一个APaaS平台,帮助企业快速搭建个性化业务应用。用户不需要代码开发就能够搭建出用户体验上佳的销售、运营、人事、采购等核心业务应用,打通企业内部数据,也能够通过API和Webhook和其他系统对接。

明道云的自动化工作流还可以实现审批、填写等控制流程和业务自动化。如果用户企业使用钉钉或企业微信,也可以将明道云搭建的应用直接对接到工作台上。

明道云可以帮助企业大大节省软件费用、降低定制开发的成本和时间,拥有一个极度灵活和易用的数据中台,并提高整体数字化和智能化水平。目前已有上百万用户使用,付费企业超过4000家,典型客户包括:中铁三局、佛山地铁、普华永道、艾瑞咨询、迪卡侬、北京大学、四川航空、上海静安区街道、艾默生电子、西门子、杭州建筑设计研究院、七天四季酒店、希尔顿、凯宾斯基酒店、可口可乐等知名机构。了解更多