powerbi - PowerBI上缺少某些行时如何计算平均值?
问题描述
考虑到这个数据集:
Day | City | Sales
2019-01-20 | London | 900
2019-01-20 | Paris | 800
2019-01-20 | Sao Paulo | 700
2019-01-21 | London | 700
2019-01-21 | Paris | 800
我需要计算每个城市每天的销售平均值。但是,在 2019 年 1 月 21 日,圣保罗没有记录。应该理解为零,没有销售。
当我创建一个简单的平均值时,PowerBI 会忽略丢失的记录并将总数 (700 + 800) 除以二(伦敦和巴黎)。
如何计算每天的平均值,包括丢失的记录(圣保罗)?
解决方案
我找到了解决方案。我认为这不是解决问题的最佳方法,但它确实有效。
所以...
- 创建具有每月间隔的日历表
MonthCalendar =
var FullCalendar = ADDCOLUMNS(CALENDAR("2019-1-1";DATE(YEAR(NOW());MONTH(NOW())+1;DAY(NOW())));"Mês";EOMONTH([Date];0))
return
SUMMARIZE(FullCalendar;[Mês])
创建一个包含类别的汇总表(在本例中为城市)
创建一个 CROSSJOIN 表
DataTable = CROSSJOIN(MonthCalendar ; Cities)
- 使用过滤器将列添加到您的 DataTable。像这样的东西:
SalesByMonth = CALCULATE(Sum('Cities'[Sales]); FILTER('Cities';'Cities'[name] = 'DataTable'[City]))
谢谢大家。我希望有一天它对某人有所帮助。丹尼尔
解决方案
您可以使用以下公式,而不是简单地使用平均函数:
Sum(Sales)/ (Max(date) - Min(date))
推荐阅读
- python-3.x - 如何在熊猫 groupby 上添加 Hodrick-Prescott 过滤趋势?
- c# - uwp ContentControl TemplateBinding 标记扩展
- sql-server - 无法连接到 Docker 容器中的 SQL Server
- excel - 单元格字符计数公式?
- java - Spring/JPA - 最好的查询方式
- r - leaflet() draws shapefile as giant rectangle
- r - knitr 在缓存 = TRUE 的 Stan 块上失败
- javascript - 带有graphql-yoga的子字段上的Graphql错误
- python - 加载图像返回函数 cv::inRange 中的断言失败
- c# - 如何将 `Tick` 事件连接到我的计时器?