簡體   English   中英

Spotfire中的交叉表

[英]Cross table in Spotfire

*基於ksp的答案進行更新(非常感謝您,這幾乎是我想要的。)

有人可以幫我解決以下問題嗎?

給定數據表:

Key     Rec     Period  DOW    Category Value 
Key1    Rec1    Period1 dow1   KPIa     x1    
Key1    Rec2    Period1 dow1   KPIb     z1
Key1    Rec3    Period2 dow1   KPIa     y1  
Key2    Rec4    Period1 dow1   KPIa     x1      
Key2    Rec5    Period1 dow1   KPIb     z1
Key2    Rec6    Period2 dow1   KPIa     y1  
Key1    Rec7    Period1 dow2   KPIa     x2      
Key1    Rec8    Period1 dow2   KPIb     z2
Key1    Rec9    Period2 dow2   KPIa     y2  
Key2    Rec10   Period1 dow2   KPIa     x2      
Key2    Rec11   Period1 dow2   KPIb     z2
Key2    Rec12   Period2 dow2   KPIa     y2
Key1    Rec13   Period1 dow1   Delta    d1
Key1    Rec14   Period1 dow2   Delta    d2
Key2    Rec15   Period1 dow1   Delta    d3
Key2    Rec16   Period1 dow2   Delta    d4

在Spotfire中,可以創建以下交叉表:

              Avg(KPIa)          Avg(KPIb)      Delta 
        Period1     Period2      Period1       Period1                 
       dow1 dow2   dow1 dow2    dow1 dow2     dow1  dow2       
Key1    x1   x2     y1   y2      z1   z2      d1    d2
Key2    x1          y1   y2      z1   z2      d3    d4

現在,我想在此交叉表中進行一些更改,但是我無法弄清楚如何:

Delta是僅對Period1有效的列。 是否可以將額外的期間和DOW級別僅應用於交叉表的某些列?

所以我想要的是:

              Avg(KPIa)          Avg(KPIb)       Delta 
        Period1     Period2      Period1         
       dow1 dow2   dow1 dow2    dow1 dow2    
Key1    x1   x2     y1   y2      z1   z2      (d1 + d2) / 2 
Key2    x1          y1   y2      z1   z2      (d3 + d4) / 2 

當dow2被過濾掉時:

              Avg(KPIa)         Avg(KPIb)        Delta 
        Period1     Period2      Period1         
         dow1        dow1         dow1     
Key1      x1          y1           z1             d1
Key2      x1          y1           z1             d3    

提前致謝。

@ user6076025-請檢查此解決方案,讓我知道是否有幫助。

為了計算目的,我將X視為1,將Y視為2,將Z視為3。

我已經取消透視了您發布的第一個屏幕快照中的數據,然后根據未透視的數據創建了一個交叉表。

隨附的屏幕截圖供您參考。

關鍵數據

來自未透視數據的交叉表

@ user6076025-我已將值分配給表中的“虛擬值”列以進行計算,並添加了計算所得的列“新增量”,該列將平均d1,d2和d3,d4。

公式如下: 計算列公式

現在,我已經從該數據創建了一個交叉表。 以下是表格和交叉表格的屏幕截圖。

新解決方案 請讓我知道這可不可以幫你。

關於陶氏問題,我將使用固定值選項在文本區域中放置一個下拉列表。

顯示名稱:“包括Dow2”值:0顯示名稱:“不包括Dow2”值:1

該腳本將具有按需更改的腳本,該腳本將執行以下操作:

if Document.Properties["udDowChoice"] == '0':
    Document.Properties["PivotString"] = '<[Category] NEST [Period] NEST [DOW]>'
else:
    Document.Properties["PivotString"] = '<[Category] NEST [Period]>'

然后在“水平軸的自定義表達式”中,使它等於${PivotString}

和使用表達式限制數據

If(${udDow} = 0, 1=1, [DOW] <> 'dow2')

為避免潛在的用戶混淆,我還建議對“過濾方案”隱藏“ DOW”過濾器。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM