week07day03(power bi dax公式 零售数据业务分析)
一. 切片器(筛选)相关的三个函数
1.all (all后面的数据意思是 不受其影响)
#ALL 筛选的是 筛选器 或 切片器#计算 销售金额 ,并且 不受到 门店ID 控制
计算金额 = CALCULATE(SUM('销售表'[金额]),ALL('销售表'[门店ID]))#计算 销售金额 ,并且 不受到 销售表中任何字段 的 控制
计算金额 = CALCULATE(SUM('销售表'[金额]),ALL('销售表'))
2. ALLEXCEPT (其后的数据存在,其他都失效,图中只有产品id有效,其他都失效)
#ALLEXCEPT 排除指定表或列 之外 其它表或列的 筛选器 功能CALCULATE(sum([金额]),ALLEXCEPT('销售表','销售表'[产品ID]))
3. ALLSELECTED : 指定谁 谁就没有筛选功能,保留其他表或列的筛选器
#失效 : ALLEXCEPT 清除指定表或列 的 筛选器 功能 , 保留其它 表或列 的 筛选器 功能
CALCULATE(sum([金额]),ALLSELECTED('销售表','销售表'[产品ID]))
二. 关系函数
1. 事实表:
核心业务表,事实表包含与业务过程或事件相关的数值、度量或事实数据,例如销售金额、数量、成本等。事实表记录了业务事件的具体数值。
2.维度表:
- 扩展表
- 维度表包含描述性的、非数值的属性信息,例如产品名称、地理位置、时间等。维度表提供了用于对事实数据进行分类和分组的维度
3. RELATED 关系函数
在事实表中添加维度表中的一列内容,#RELATED : 将维度表 当中的 "借用(复制)" 列 到 事实表
列 = RELATED('门店信息表'[门店名称])
4. RELATEDTABLE
当两个表的行数不相同需要sumx进行辅助,将事实表中的列 复制 到 维度表
列 = SUMX(RELATEDTABLE('销售表'),[金额])
三. 日历函数 (CALENDAR函数) (重新看)
注意: 如果是销售订单的话,不是每天都有订单,数据的日期会产生断层,需要自己产生连贯的时间
#case 变量 when 值
#case when 变量=值
#字段 in (1,2,3)
日期时间表 = -- 当前是一个变量-- 加了Var 以后 返回的结果 必须写在Return之后VAR BeginDate = MIN('销售表'[日期]) --"2019/10/10"VAR EndDate = MAX('销售表'[日期]) --"2020/10/10"
RETURN-- 添加列ADDCOLUMNS(-- 从表当中挑选列SELECTCOLUMNS(-- CALENDAR : 日历函数返回的结果是一张表CALENDAR( DATE(YEAR(BeginDate)-1,1,1),DATE(YEAR(EndDate)+1,1,1)), -- select Date as 日期"日期",[Date]),"年",YEAR([日期]),"季度",SWITCH(TRUE(),MONTH([日期]) IN {1,2,3} , 1 ,MONTH([日期]) IN {4,5,6} , 2 ,MONTH([日期]) IN {7,8,9} , 3 ,MONTH([日期]) IN {10,11,12} , 4 ),"年季",YEAR([日期])*10 +SWITCH(TRUE(),MONTH([日期]) IN {1,2,3} , 1 ,MONTH([日期]) IN {4,5,6} , 2 ,MONTH([日期]) IN {7,8,9} , 3 ,MONTH([日期]) IN {10,11,12} , 4 ),"季度名称" , "Q" &SWITCH(TRUE(),MONTH([日期]) IN {1,2,3} , 1 ,MONTH([日期]) IN {4,5,6} , 2 ,MONTH([日期]) IN {7,8,9} , 3 ,MONTH([日期]) IN {10,11,12} , 4 ),"月",MONTH([日期]),"年月",YEAR([日期])*100 + MONTH([日期]),"月份名称" , "M" & MONTH([日期]),"周",WEEKNUM([日期],2),"年份周数",YEAR([日期])*100 + WEEKNUM([日期],2),"星期",WEEKDAY([日期],2),"日",DAY([日期]))
#ADDCOLUMNS("表","名称1","表达式1".....) 给指定的表添加 计算列 ,
返回的结果是 表#SELECTCOLUMNS("表","名称1","表达式1".....) 选择指定表 中的列 ,并对列重命名 ,
返回的结果是 表#CALENDAR(start,end) 返回一段连续日期 的表 ,表中包含一个默认字段[Date]
# WEEKDAY([日期],2) 返回 列 或 度量值 , 1是从周天开始 ,2 从周一开始
# WEEKNUM([日期],2) 一年中的第几周
#VAR + RETURN : VAR定义变量的
四. USERELATIONSHIP函数
将销售表的日期和日期时间表连接,统计是按照日期时间表的日期进行计算
# userelationship: 表明 列(本表) 和列(其他表) 之间的关系, 不返回任何结果CALCULATE(SUM([数量]),'销售表'[金额]>0,USERELATIONSHIP('销售表'[日期],'日期时间表'[日期]))
五. 时间智能函数
dateadd 返回的是单列的表
DATEADD('日期时间表'[日期],-1,YEAR)
DATESBETWEEN
DATESBETWEEN('日期时间表'[日期],DATE(2019,6,1),DATE(2019,06,30)),
calculate(sum([数量]),filter(DATESBETWEEN('日期时间表'[日期],DATE(2019,6,1),DATE(2019,06,30)),TRUE())
)calculate(sum([数量]),AND('日期时间表'[日期] >= DATE(2019,6,1),'日期时间表'[日期] <= DATE(2019,6,30))
)calculate(sum([数量]),'日期时间表'[日期] >= DATE(2019,6,1),'日期时间表'[日期] <= DATE(2019,6,30)
)calculate(sum([数量]),'日期时间表'[日期] >= DATE(2019,6,1) && '日期时间表'[日期] <= DATE(2019,6,30)
)
计算累计值
TOTALMTD: 最大的极限只能算到 月总和 ,不可以算到季度和年。(Month-to-Date)
# 按照日期时间表'[日期],且金额大于0的数据进行 金额求和
TOTALMTD( sum([金额]),'日期时间表'[日期],'销售表'[金额] >0)
六.零售数据业务分析
1. 传统零售的Excel困境:
- 数据量限制(500MB)
- 不能对数据进行实时刷新
2. 新零售系统
- 定制二维码 :通过二维码,可以确定从什么店铺注册的
- 集合 智能终端 获取到 销售数据和会员消费数据
- 商家有ERP系统,里面可以显示各个区域 和 门店中的库存
- 最终通过各方 汇集的数据, 形成数据看板
3. 广域流量
- 投流
- 要保证当前的品牌能做的大
4.私域流量
- up主引流、文章、微信的公众号
- 要保证当前品牌可以做的稳
七. 数据来源
1. 有独立站
- 公司、厂店一体有自己的品牌, 公司内部一般会搭建 大数据仓库
- 独立站一般会 埋点, 可以获取 用户的行为数据。下单以后会存在 经营数据
2. 只有平台的店铺
- 千牛、 生意参谋(有限时间的订单数据)。
- 店透视和店侦探(竞品分析)
- ERP(订单数据 综合数据)
- CRM(会员数据)
- WRM(仓库数据)
3.信息孤岛
- 公司里面有多个ERP和平台工具,存在"信息孤岛", 则打通 信息孤岛
八. 数据分析的价值
1. 分析当前业务开展情况是否良好
- 会员情况:
- 会员总数是否增加
- 老会员留存率
- 会员精准群体
- 库存情况:
- 活动库存
- 流程和审核
- 关联情况:
- 打包组合
规避风险 ,精准营销
九. 模型的关系
- 星形模型
- 雪花模型
- 星座模型:多个表之间有交叉(维度表交叉还特别多)
- 梳状模型: 主表之间多有关系,维度表之间没啥关系
十. 归纳表的创建
1. 创建方法
- 将维度表前添加前缀
- 将事实表前添加前缀
- 模型之间关系的建立
- 方法:选择主页 输入数据 创建空列 将模块选择到模型视图,点击任意表,查看右侧属性栏,标记 显示文件夹(可以将度量值 或 列 分包存储)
相关文章:
week07day03(power bi dax公式 零售数据业务分析)
一. 切片器(筛选)相关的三个函数 1.all (all后面的数据意思是 不受其影响) #ALL 筛选的是 筛选器 或 切片器#计算 销售金额 ,并且 不受到 门店ID 控制 计算金额 CALCULATE(SUM(销售表[金额]),ALL(销售表[门店ID]))#计算 销售金额 &#x…...

rembg报错onnxruntime_providers_tensorrt.dll
报错: 2024-03-16 04:16:59.4413827 [E:onnxruntime:Default, provider_bridge_ort.cc:1534 onnxruntime::TryGetProviderInfo_TensorRT] D:\a_work\1\s\onnxruntime\core\session\provider_bridge_ort.cc:1209 onnxruntime::ProviderLibrary::Get [ONNXRuntimeErro…...

精酿啤酒:一口啤酒,一份享受
在繁华的都市生活中,我们总是匆匆忙忙,追求着各种目标和成就。然而,在这个过程中,我们往往忽略了生活的本质,那就是享受。而Fendi Club 啤酒,正是为那些追求品质生活的都市精英们量身打造的。 Fendi Club啤…...

git报: “fatal: detected dubious ownership in repository“
“fatal: detected dubious ownership in repository”的中文翻译是:“致命错误:检测到仓库中存在可疑的所有权问题”。 这句话意味着 Git 在检查代码仓库时发现所有权存在问题,可能是由于文件或目录的所有权与 Git 仓库预期的所有权不匹配。…...

代码随想录算法训练营第27天|93.复原IP地址、78.子集、90.子集二
目录 一、力扣93.复原IP地址1.1 题目1.2 思路1.3 代码1.4 总结 二、力扣78.子集2.1 题目2.2 思路2.3 代码2.4 总结 三、力扣90.子集二3.1 题目3.2 思路3.3 代码3.4 总结 一、力扣93.复原IP地址 (比较困难,做起来很吃力) 1.1 题目 1.2 思路 …...

Java微服务轻松部署服务器
我们在日常开发微服务之后需要再服务器上面部署,那么如何进行部署呢,先把微服务的各个服务和中间件以及对应的端口列举出来,都打包成镜像,以及前端代码部署的nginx,使用docker-compose启动,访问服务器nginx…...

Wordpress站点通过修改.htaccess 设置重定向实现强制 https 访问
要在WordPress站点上通过修改.htaccess文件实现强制HTTPS访问,您可以按照以下步骤进行操作: 登录到WordPress站点管理后台。 在文件管理器或通过FTP访问网站根目录,找到并打开名为 .htaccess 的文件。 在打开的文件中添加以下代码…...

人大金仓助力国家电网调度中心培养国产数据库专家人才
近日,为进一步提升调度自动化安全可靠水平,提高电网数据应用效能,人大金仓助力国家电网调度中心培养国产数据库专家人才。 调度自动化系统拥有海量电网数据资源,是支撑电网安全经济优质运行的重要保障。数据库是调度自动化系统稳定运行的基石之一,其结构严谨、运行稳定、扩展灵…...

什么是增强型SSL证书?购买一张需要多少钱?
增强型SSL证书是一种提供更高级别安全验证与用户信任度的网络安全工具,也被称为EV证书。相较于DV(域名验证)和OV(组织验证)证书,它通过严格的身份核实流程确保网站所有者的合法性和真实性。 首先࿰…...

C++:函数传参到函数执行结束发生了什么
首先要明确两个概念 函数实参的入栈从右向左栈区从高地址向低地址偏移 接下来看下面一段代码 void fun(int a,int b,int c){std::cout<<&a<<" "<<&b<<" "<<&c<<std::endl; } int main(){fun(1,2,3); }…...

QT中dumpcpp以及dumpdoc使用
qt中调用COM的方式方法有四种,参考解释在 Qt 中使用 ActiveX 控件和 COM (runebook.dev) 介绍dumpcpp的使用方法Qt - dumpcpp 工具 (ActiveQt) (runebook.dev): 在安装好了的qt电脑上,通过powershell窗口来实现,powershell比cmd要…...

RPM与DNF的操作实践
这几课有三个目标: 第一步:先配置软件源 跳转到yum.repos.d目录,用vim创建一个openeuler_x84_64.repo文件。这个文件就是我们将会用到的软件源。 我们在里面添加这些东西,保存并退出即可。 然后,我们用yum list all就…...

车道线检测之LaneNet
论文:Towards End-to-End Lane Detection: an Instance Segmentation Approach Github:https://github.com/MaybeShewill-CV/lanenet-lane-detection?tabreadme-ov-file 论文提出一种车道线检测网络LaneNet,该网络以enet为主干网络结构&…...

MySQL连接数不足导致服务异常GetConnectionTimeoutException
文章目录 场景复现解决方案一、调整连接数二、优化程序 场景复现 已经上线正常运行的项目突然很多功能无法使用,查看程序日志发现MySQL报错,异常信息: Could not open JDBC Connection for transaction; nested exception is com.alibaba.druid.pool.Ge…...

软考76-上午题-【面向对象技术3-设计模式】-创建型设计模式01
一、创建型设计模式一览 二、创建型设计模式 2-1、创建型设计模式的概念 一个类创建型模式使用继承改变被实例化的类; 一个对象创建型模式将实例化委托给另一个对象。 对应java的new一个对象。 2-2、简单工厂模式(静态工厂方法) 简单工厂…...

Matlab 双目相机标定(内置函数)
文章目录 一、简介二、实现代码三、实现效果参考资料一、简介 相机标定的目的就是要找到从世界坐标转换为图像坐标所用到的投影P矩阵各个系数(即相机的内参与外参)。具体过程如下所述: 1、首先我们需要获取一个已知图形的图像(这里我们使用MATLAB所提供的数据)。 2、找到同…...

【博客7.4】缤果Qt5_TWS串口调试助手V2.0 (高级篇)
超级好用的Qt5_TWS耳机串口调试助手 开发工具: qt-opensource-windows-x86-5.14.2 (编程语言C) 目录 前言 一、软件概要: 二、软件界面: 1.App演示 三、获取 >> 源码以及Git记录: 总结 前言 串口调试助手支持常用的50bps - 10M…...

CSS案例-4.padding导航栏练习
效果 相关数据: 上边框:3px,颜色#ff8500 下边框:1px,颜色#edeef0 背景颜色:#fcfcfc 高度:41px 内边距20px 字体颜色#4c4c4c 知识点 盒子边框border 属性 作用 border-width 定义边框粗细,单位px border-style 边框的样式 border-color 边框颜色 边框样式...
5.1.4.2、【AI技术新纪元:Spring AI解码】Llama2 Chat
Llama2 Chat Meta 的 Llama 2 Chat 是 Llama 2 系列大型语言模型的一部分。它在基于对话的应用程序中表现出色,参数规模范围从 70 亿到 700 亿不等。利用公共数据集和超过 100 万次人类注释,Llama Chat 提供了上下文感知的对话。 通过从公共数据源获取的 2 万亿标记进行训练…...
后台发送GET/POST方法
前言: 1,get请求 2,post请求 3,post,get通用方法 4,其他的get,post写法 正文: 1,get请求 import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.HttpException; import org.apache.commons.httpclient.HttpStatus; import or…...

测试微信模版消息推送
进入“开发接口管理”--“公众平台测试账号”,无需申请公众账号、可在测试账号中体验并测试微信公众平台所有高级接口。 获取access_token: 自定义模版消息: 关注测试号:扫二维码关注测试号。 发送模版消息: import requests da…...
Java 语言特性(面试系列2)
一、SQL 基础 1. 复杂查询 (1)连接查询(JOIN) 内连接(INNER JOIN):返回两表匹配的记录。 SELECT e.name, d.dept_name FROM employees e INNER JOIN departments d ON e.dept_id d.dept_id; 左…...

RocketMQ延迟消息机制
两种延迟消息 RocketMQ中提供了两种延迟消息机制 指定固定的延迟级别 通过在Message中设定一个MessageDelayLevel参数,对应18个预设的延迟级别指定时间点的延迟级别 通过在Message中设定一个DeliverTimeMS指定一个Long类型表示的具体时间点。到了时间点后…...
C++:std::is_convertible
C++标志库中提供is_convertible,可以测试一种类型是否可以转换为另一只类型: template <class From, class To> struct is_convertible; 使用举例: #include <iostream> #include <string>using namespace std;struct A { }; struct B : A { };int main…...

【人工智能】神经网络的优化器optimizer(二):Adagrad自适应学习率优化器
一.自适应梯度算法Adagrad概述 Adagrad(Adaptive Gradient Algorithm)是一种自适应学习率的优化算法,由Duchi等人在2011年提出。其核心思想是针对不同参数自动调整学习率,适合处理稀疏数据和不同参数梯度差异较大的场景。Adagrad通…...

以下是对华为 HarmonyOS NETX 5属性动画(ArkTS)文档的结构化整理,通过层级标题、表格和代码块提升可读性:
一、属性动画概述NETX 作用:实现组件通用属性的渐变过渡效果,提升用户体验。支持属性:width、height、backgroundColor、opacity、scale、rotate、translate等。注意事项: 布局类属性(如宽高)变化时&#…...
mongodb源码分析session执行handleRequest命令find过程
mongo/transport/service_state_machine.cpp已经分析startSession创建ASIOSession过程,并且验证connection是否超过限制ASIOSession和connection是循环接受客户端命令,把数据流转换成Message,状态转变流程是:State::Created 》 St…...

高频面试之3Zookeeper
高频面试之3Zookeeper 文章目录 高频面试之3Zookeeper3.1 常用命令3.2 选举机制3.3 Zookeeper符合法则中哪两个?3.4 Zookeeper脑裂3.5 Zookeeper用来干嘛了 3.1 常用命令 ls、get、create、delete、deleteall3.2 选举机制 半数机制(过半机制࿰…...
质量体系的重要
质量体系是为确保产品、服务或过程质量满足规定要求,由相互关联的要素构成的有机整体。其核心内容可归纳为以下五个方面: 🏛️ 一、组织架构与职责 质量体系明确组织内各部门、岗位的职责与权限,形成层级清晰的管理网络…...

DBAPI如何优雅的获取单条数据
API如何优雅的获取单条数据 案例一 对于查询类API,查询的是单条数据,比如根据主键ID查询用户信息,sql如下: select id, name, age from user where id #{id}API默认返回的数据格式是多条的,如下: {&qu…...