Power bi创建矩阵表

时间:2019-07-01 22:02:57

标签: powerbi-desktop

我的powerbi报表中有一个表,但是我需要创建一个矩阵表,其中行和列标题是从一列的一组不同值中提取的,而单元格中的计数是另一列的不同计数基于行和列的组合的列

原始数据

ROW NAME    AttributeType    Attibute       Attribute Value         
1   John    ID Key           EMAIL          JohnSmith@google.com    
2   Bill    ID Key           EMAIL          Bill@yahoo.com          
3   Sue     ID Key           EMAIL          Sue@google.com          
4   John    ID Key           TWITER         John@google.com         
5   John    ID Key           EMAIL          JohnSmith@google.com    
6   John    ID Key           EMAIL          JohnSmith@google.com    
7   Sue     ID Key           EMAIL          JohnSmith@google.com    
8   John    ID Key           EMAIL          JohnSmith@google.com    
9   Frank   ID Key           EMAIL          Frank@google.com        
10  Frank   ID Key           TWITTER        Frank@google.com        
11  Frank   ID Key           SNAPCHAT       Frank@google.com

尝试创建以下结果:

转换数据以产生客户计数

        EMAIL   TWITTER     SNAPCHAT
EMAIL       1       2           0
TWITTER     2       0           0
SNAPCHAT    0       0           0

我如何获得计数

EMAIL / EMAIL = 1位客户,                 因为她是唯一的顾客,所以只能起诉                 仅具有EMAIL

EMAIL / TWITTER = 2位客户,                   Bill和John,因为他们只有EMAIL和TWITTER

EMAIL / SNAPCHAT = 0没有客户只有EMAIL和SNAPCHAT

TWITTER / EMAIL = 2位客户,即Bill和John                   仅具有EMAIL和TWITTER

TWITTER / TWITTER = 0没有客户只有TWITTER

TWITTER / SNAPCHAT = 0没有客户只有TWITTER和SNAPCHAT

SNAPCHAT / EMAIL = 0没有客户拥有SNAPCHAT和EMAIL仅

SNAPCHAT / TWITTER = 0没有客户只有SNAPCHAT和TWITTER

SNAPCHAT / SNAPCHAT = 0没有客户仅拥有SNAPCHAT和SNAPCHAT

1 个答案:

答案 0 :(得分:0)

您可以使用汇总表:

Totals = 
     SUMMARIZE('table';
     'table'[Attribute];
     "Email"; calculate(distincount('table'[NAME]), 'table'['Attribute]="EMAIL";
     "TWITTER"; calculate(distincount('table'[NAME]), 'table'['Attribute]="TWITTER";
     "SNAPCHAT"; calculate(distincount('table'[NAME]), 'table'['Attribute]="SNAPCHAT")