powerbi - 是否有特定的方法可以在 PowerBI 的列中有条件地添加?
问题描述
是否有特定的方法可以在 PowerBI 的列中有条件地添加?
样本数据:
Lang|Book_Type|Number|Book_Type (groups)
------------------------
A | B1 | 2 | B1
------------------------
B | B1 | 2 | B1
------------------------
C | B1 | 3 | B1
------------------------
A | B2 | 4 | B2
------------------------
B | B2 | 2 | B2
------------------------
A | B3 | 2 | B3
------------------------
A | B4 | 2 | B4
------------------------
B | B4 | 5 | B4
------------------------
所以,我想要做的是我想要第 5 列,其中对应于每一行,我有该类型的书籍总数,即在第 5 列中的第 1,2 和 3 行,我想要:7(=2+2+3),在第 4 行和第 5 行的第 5 列,我想要:6(=4+2)。我也尝试过分组,但还是一样。有没有办法在 DAX 中做到这一点?我尝试了以下代码,但它给出了循环依赖错误。
SUMX (
'Book_store',
IF (
( Book_store[Book_Type] = Book_store[Book_Type (groups)] ),
CALCULATE ( SUM ( 'Book_store'[Number] ) ),
BLANK ()
)
)
解决方案
这是循环依赖的原因是您将整个表调用为 SUMX 的第一个参数中新列定义的一部分(其中包括您要添加的列......但您不能引用您尚未创建)。
更好的方法可能看起来像这样
CALCULATE (
SUM ( Book_store[Number] ),
ALLEXCEPT ( Book_store, Book_store[Book_type (groups)] )
)
这告诉它对 Number 列求和,忽略除指定列之外的所有列。
推荐阅读
- parquet-mr - java.lang.ClassCastException:可选的 int32 计数不是一个组
- c# - 如何生成从控制器到 razorpages 的链接?
- symfony - 最佳实践:评论@return for $this->render twig
- android - Android Studio 导入的项目在 SDK 目录中显示不同的用户
- android - 在Gridlayout中更改手指移动按钮的颜色?
- android - 强制 LiveData 同步运行
- r - 倾斜文字显示
- python - 为什么我的网络抓取工具不能正确地从 CSV 转换 URL 以供下载?
- coldfusion - 为什么我不能使用 New 实例化 CFC 的方法
- r - 有没有办法操作数据并将其放入数据框中的特定行/列 CELL 中?