首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >从R脚本到Power Bi -如何使用setdiff

从R脚本到Power Bi -如何使用setdiff
EN

Stack Overflow用户
提问于 2018-08-29 17:34:56
回答 2查看 374关注 0票数 2

我有两个数据帧:zerowy_nazwa5zatwierdzony_nazwa5

和工作2行:

setdiff(zatwierdzony_nazwa5, zerowy_nazwa5)
setdiff(zerowy_nazwa5, zatwierdzony_nazwa5)

我如何在PowerBi中实现它?

感谢你的帮助

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-08-30 17:20:48

读到你的问题,我假设:

  1. 您的主要目标是在PowerBI
  2. 内部执行此操作,而不是专门询问如何使用DAX

执行此操作

R在Power BI中的力量并不局限于R视觉效果。您可以加载single和多个表,并使用Edit Queries > Transform > Run R Script将它们用作R脚本和任何R功能的输入。

下面是一个使用两个合成数据帧和setdiff()的示例:

代码片段1 (来自R中的dplyr::setdiff示例)

library(dplyr)
a <- data.frame(column = c(1:10, 10))
b <- data.frame(column = c(1:5, 5))
c <- dplyr::setdiff(a, b)

# Output
# column
# 1      6
# 2      7
# 3      8
# 4      9
# 5     10

既然你没有描述你的预期输出,我假设这就是你想要的。但要注意,如果您没有使用dplyr库,base::setdiff()将给出不同的输出:

代码片段2

c <- base::setdiff(a, b)

# output

# column
# 1       1
# 2       2
# 3       3
# 4       4
# 5       5
# 6       6
# 7       7
# 8       8
# 9       9
# 10     10

如果您仔细遵循this post中的步骤,您将能够在Power BI中完成此操作。但这里是它的本质:要重现该示例,请转到Edit Queries (Power Query Editor) > Enter Data并单击OK。然后使用Transform > Run R script插入一个R脚本,并插入上面的代码片段。

如果有任何不清楚的地方,或者如果你不能重现结果,请告诉我。

票数 0
EN

Stack Overflow用户

发布于 2018-08-31 01:08:42

你的问题很不清楚,所以我不得不做一些假设。我会将你的问题解释为如何在Power BI中本机执行一组差异。

假设我们有表AB,如下所示

Table A:   Table B:      
Column     Column
------     ------
 1          2
 2          4
 3
 4
 5

我们想要得到设置的差值A - B

 Column
 ------
  1
  3
  5

您可以在DAX或Power Query M语言中执行此操作:

M语言

您可以使用left反联接来完成此操作。M代码如下所示:

 = Table.NestedJoin(A,{"Column"},B,{"Column"},"B",JoinKind.LeftAnti)

删除新的"B“列,就可以开始了。

另一种方法是使用Table.SelectRows函数:

= Table.SelectRows(A, each not List.Contains(B[Column], _[Column]))

DAX语言

您只需过滤表A即可排除表B中的值

FILTER(A, NOT( A[Column] IN VALUES( B[Column] ) ) )

或者使用旧的CONTAINS语法而不是IN

FILTER(A, NOT( CONTAINS( VALUES( B[Column] ), B[Column], A[Column] ) ) )

注意:正如vestland所指出的,在Power查询环境中使用R脚本当然是可能的。正如Juan指出的那样,目前不能在DAX表达式中使用R脚本。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52074170

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档