❌ 看同事用Python调参炫技,你默默打开Excel按下“F2”❌ 老板要预测下季度销量,你硬着头皮画了条玄学折线❌ 听说K-means聚类高大上,结果在Excel里算到第3步直接死机
如果你以为Excel只能做表格,今天DAX函数教你什么叫“杀鸡用牛刀”!
⏳DAX核心奥义“公式越骚,摸鱼越早”✅ 无需编程:IF函数玩转分类算法✅ 内存杀器:千万行数据秒级计算✅ 动态交互:切片器切换模型参数(谁说Excel不能搞AI?只是你们打开方式不对!)
️基础配置与三观重塑▌ 启用Power Pivot
【文件】→【选项】→【加载项】→勾选Power Pivot点击【Power Pivot】→【管理】进入数据建模界面▌ 必改设置(避免被公式反杀)
关闭“自动关系检测”(防止表关联乱伦)设置【计算选项】→“手动更新”(防止改公式时卡死)勾选【内存优化模式】(10秒加载百万行不是梦)新手三连击:从SQL到AI1️⃣ 数据准备黑科技
// 自动生成日期维度表(比Python香) 日期表 = ADDCOLUMNS ( CALENDAR (DATE(2020,1,1), DATE(2025,12,31)), "年份", YEAR([Date]), "季度", "Q" & ROUNDUP(MONTH([Date])/3,0) )2️⃣ 动态指标看板
// 智能切换KPI公式(摸鱼神器) 动态销售额 = SWITCH( SELECTEDVALUE('指标表'[KPI类型]), "预测", [线性回归结果], "实际", SUM('订单表'[金额]) )3️⃣ 模型可视化按住Ctrl选中三个度量值→【插入】→【三维地图】→开启上帝视角
降维打击第一式:线性回归场景:根据历史数据预测下月销售额
口语化解释:
线性回归就是找规律界的“老中医”——给你一堆“广告费”和“销售额”的CP组合,它能从散点图里把出一条最像直线的红线(回归线),然后摸着这条线说:“按这个趋势,下个月投20万广告,大概能赚250万”
月份 广告费 销售额 2023-01 10万 150万 2023-02 15万 200万
DAX公式:
斜率 = VAR Known = FILTER('销售表', NOT(ISBLANK([广告费]))) RETURN SLOPEX(Known, [销售额], [广告费]) 截距 = VAR Known = FILTER('销售表', NOT(ISBLANK([广告费]))) RETURN INTERCEPTX(Known, [销售额], [广告费]) 预测值 = [截距] + [斜率] * SELECTEDVALUE('参数表'[新广告费])效果:✔️ 拖动切片器实时看预测曲线✔️ 自动排除空值干扰✔️ R²值直接显示在数据透视表
☄️降维打击第二式:朴素贝叶斯分类场景:根据用户行为判断购买意向
口语化解释:
朴素贝叶斯堪称概率界的“算命大师”——假设每个特征(比如点击次数、停留时长)都独立影响结果,然后掐指一算:“这个用户点了12次页面,80%可能是想剁手!”原理类似垃圾邮件过滤:出现“发票”“转账”等词时,直接判定为垃圾邮件
用户ID 点击次数 停留时长 是否购买 001 12 300s 是
DAX公式:
购买概率 = VAR P_购买 = DIVIDE(CALCULATE(COUNTROWS('用户表'), '用户表'[是否购买]="是")) VAR P_特征_购买 = PRODUCTX( VALUES('特征表'[特征]), DIVIDE( CALCULATE(COUNTROWS('用户表'), AND('用户表'[是否购买]="是", '用户表'[特征]=EARLIER('特征表'[特征])) )) ) RETURN DIVIDE(P_特征_购买 * P_购买, CALCULATE(P_特征_购买))骚操作:✔️ 用数据透视表实现概率矩阵✔️ 添加“置信度”阈值动态预警✔️ 联动Power View做决策树可视化
降维打击第三式:关联规则挖掘场景:发现“啤酒+尿布”式组合销售规律
口语化解释:
关联规则就像超市的“摆货心机婊”——通过计算支持度(啤酒和尿布同时出现的频率)和提升度(买啤酒的人更可能买尿布的程度),找到最佳CP组合。DAX公式就是你的“货架优化师”
DAX公式:
支持度 = DIVIDE( CALCULATE( COUNTROWS('订单表'), CONTAINSSTRING([商品组合], "A") && CONTAINSSTRING([商品组合], "B") ), COUNTROWS('订单表') ) 提升度 = DIVIDE( [支持度], [A单独购买率] * [B单独购买率] )实战技巧:✔️ 用Power Query生成商品组合矩阵✔️ 设置条件格式:提升度>1.5自动标红✔️ 联动切片器找最佳促销组合
避坑指南1️⃣ 循环依赖地狱:所有度量值必须注明数据表来源2️⃣ 上下文刺客:慎用ALL函数,会破坏筛选上下文3️⃣ 内存黑洞:避免在计算列中使用FILTER函数
职场AI化十大杀招案例1:K-means客户分群聚类中心 = GENERATE( VALUES('客户表'[ID]), VAR CurrentID = '客户表'[ID] RETURN TOPN( 1, SUMMARIZE( '客户表', '客户表'[聚类], "距离", SUMX( '客户表', ABS([消费频次] - AVERAGEX( FILTER('客户表', '客户表'[聚类]=EARLIER('客户表'[聚类])), [消费频次] )) ) ), [距离], ASC ) ) 案例2:RFM价值分析客户价值 = SWITCH( TRUE(), AND([R]<30, [F]>5, [M]>1000), "重要价值客户", AND([R]>90, [F]<2), "流失风险客户", "一般客户" ) 案例3:时间序列预测LSTM平替版 = FORECAST.ETS( '日期表'[Date], [历史销售额], '日期表'[Date], 12, // 预测12期 1, // 季节性周期 "AIC" // 自动选择算法 ) 案例4:异常检测引擎欺诈概率 = IF( [交易金额] > 3*STDEVX.P('历史交易表', [交易金额]), "高风险", IF( DATEDIFF([最近交易时间], NOW(), DAY) < 1, "密集交易预警", "正常" ) ) 摸鱼终极奥义在Power Pivot界面按下Alt+F11打开VBA编辑器插入模块输入:Sub 自动分析() Do While True CalculateAll Application.Wait Now + TimeValue("00:10:00") Loop End Sub 对着屏幕皱眉:“系统正在迭代优化模型”(从此上班看剧时,Excel在后台默默卷同事)下期预告:《Excel+ChatGPT融合技——让表格自己写周报!》
转载请注明来自海坡下载,本文标题:《优化DAX(DAX函数降维打击用Excel做机器学习)》
京公网安备11000000000001号
京ICP备11000001号
还没有评论,来说两句吧...