Power BI 商品管理应用:使用相关系数检核订单准确性

用户头像
wujunmin
关注
发布于: 2020 年 05 月 07 日

服饰业商品管理常用的考核指标有销售折扣、毛利率、售罄率等,这些是整盘货品的大指标。更为细节的一个指标是订单准确性,即买手订的多的产品是否正好是卖的好的,准确性评判可以具体到单个SKU。



如下是一种完美的情况,A货号订量最多,卖得也最好,以此类推。从订单准确性这个角度讲,该买手可以得100分。





当然,这种情况现实中不可能发生,因为买手不是神仙。预测与实际有差异是正常现象。如何评判买手的订单准确性成绩?



前些年我是买手的时候,公司采用了比较复杂的计算方法。这两天正好有成都的一位同学来电探讨这一问题,我思考了下,认为相关系数是最简约,并且准确的评分方式。



在Excel中的相关系数函数是CORREL还是上面这个完美的例子,这位买手的准确性显然是100%,可以得100分,公式如下:





随机测试两种订单情况:





不排除订的最少的货品反而卖的最好,因此可以加个IF条件,负相关全部零分。





该函数语法非常简单,两个参数分别选择两列数据即可。



与关联系数越接近 + 1 或-1,它表示数组之间的正值(+ 1)或负(-1)关系。正相关意味着如果一个数组中的值增加,则其他数组中的值也会增加。关联系数越接近于0,表示没有或弱相关性。



那么在Power BI中如何实现该功能?很遗憾微软并没有将CORREL函数引入Power BI,但是并不意味着我们要写复杂的DAX公式,有人帮我们写好了。在“建模”选项卡下,选择“快速度量”,如下图所示设置字段,会自动生成相关系数的度量值。





这个度量值完整代码如下(没错,比较长但不用自己写):

货号 的 订单数量 和 销量数量 相关性 = VAR __CORRELATION_TABLE = VALUES('订单'[货号])VAR __COUNT = COUNTX(KEEPFILTERS(__CORRELATION_TABLE), CALCULATE([订单数量] * [销量数量]))VAR __SUM_X = SUMX(KEEPFILTERS(__CORRELATION_TABLE), CALCULATE([订单数量]))VAR __SUM_Y = SUMX(KEEPFILTERS(__CORRELATION_TABLE), CALCULATE([销量数量]))VAR __SUM_XY = SUMX( KEEPFILTERS(__CORRELATION_TABLE), CALCULATE([订单数量] * [销量数量] * 1.) )VAR __SUM_X2 = SUMX(KEEPFILTERS(__CORRELATION_TABLE), CALCULATE([订单数量] ^ 2))VAR __SUM_Y2 = SUMX(KEEPFILTERS(__CORRELATION_TABLE), CALCULATE([销量数量] ^ 2))RETURN DIVIDE( __COUNT * __SUM_XY - __SUM_X * __SUM_Y * 1.,SQRT( (__COUNT * __SUM_X2 - __SUM_X ^ 2) * (__COUNT * __SUM_Y2 - __SUM_Y ^ 2) ) )

计算结果和Excel中是一样的。这里后续可以加IF条件将负相关得分变为0,其它变为百分制。





简约实用,商品管理岗位相关的读者可以尝试下。顺便一提,“快速度量”这里其实是个宝库,很多常规的计算不需要我们自己写。





发布于: 2020 年 05 月 07 日 阅读数: 38
用户头像

wujunmin

关注

Power BI/Excel 2019.05.05 加入

零售业从业者

评论

发布
暂无评论
Power BI商品管理应用:使用相关系数检核订单准确性