2016-09-23 69 views
1

下面是我一直在研究的可視化屏幕截圖。Tableau Customized FIlter

enter image description here

我需要一個關於定製過濾器一個小的幫助/諮詢/指導。

圖形的X和Y軸上的一個小細節。 X軸包含不同的DRG代碼,而Y軸包含其各自的平均成本。顏色表示4個嚴重等級(1,2,3,4)。 0爲空。

我需要過濾並保留那些高於Gray平均值的數據。我需要篩選器同時處理所有嚴重性,例如AND運算符。你可以看到1,2,3,4,5個DRG代碼的例子。所有的嚴重程度都高於平均水平。我寫的東西一樣 -

IF [APR Severity Of Illness Code]==1 AND [MeanCost.mean]>29863 THEN [MeanCost.mean] END + IF [APR Severity Of Illness Code]==2 AND [MeanCost.mean]>29863 THEN [MeanCost.mean] END + IF [APR Severity Of Illness Code]==3 AND [MeanCost.mean]>29863 THEN [MeanCost.mean] END + IF [APR Severity Of Illness Code]==4 AND [MeanCost.mean]>29863 THEN [MeanCost.mean] END

這顯然沒有工作了。 它的工作原理時,給出的條件只有一個,有點像 -

IF [APR Severity Of Illness Code]==1 AND [MeanCost.mean]>29863 THEN [MeanCost.mean] 
END 

,但在給出一個以上條件過濾器返回空值。請幫忙。

+0

所以你只是想把它直接拉入過濾器?它不會成爲用戶選擇的過濾器?如果MeanCost.mean級別(29863)對於所有嚴重級別相同,爲什麼還需要IF語句?如果它保持這種方式,我會認爲你需要使用IFELSE語句,而不是關閉每個IF(「END」)並開始另一個。 – lampbob

+0

我已經使用了Bernardo在下面的答案中提出的建議。無法得到它的工作。 我沒有使用IFELSE,因爲我需要它在同一時間工作。我的意思是,這不是這個或那個。它應該是在所有情況下都是。 我需要顯示所有嚴重度大於avg平均成本的所有DRGCodes。 –

回答

0

您可能只需要一條IF語句。

If [MeanCost.mean] > {fixed : avg([MeanCost.mean]) } then 'show' else 'hide' END 

爲新的參考線創建一個新計算,這是示例工作簿中的計算2。

{fixed : avg([MeanCost.mean]) } 

這是因爲如果過濾出「隱藏」值,則當前參考線將移動以顯示所有「顯示」值的平均值。

現在放置您的過濾器並選擇'顯示'。

附帶的樣品。 https://dl.dropboxusercontent.com/u/60455118/POC%20Req%203%20-%2023%20Sept.twbx

+0

這是我做的 - 1.做了一個計算領域。 2.插入你所說的內容,包括'show'和沒有語法錯誤。 3.添加到過濾器架子。 這是發生了什麼事。 從列表中選擇顯示空值。如果我點擊確定,則不進行過濾,所有值保持不變。 你的代碼很有道理,但不知何故,我無法使它工作。 –

+0

有沒有機會分享樣本工作簿? – Bernardo

+0

以下是同樣的Drive鏈接 - https://drive.google.com/open?id=0B2zFuMt6Wn9lZVh1VGlPcjRudDQ 請檢查Measures中的Calculation1。 –

0

pragyanbezbo,假設你的Tableau V9或V10,你可以使用詳細等級(LOD)表達的版本中引入的9去年:

{ FIXED [APR DRG Code], [APR Severity Of Illness Code] : AVG([MeanCost.mean]) } > 29863 

這應返回TRUE/FALSE和工作剛精細。我可能會建議用動態公式替換硬編碼的平均值(29,863),但我不確定過濾器是如何應用的,它可能需要一些更多細節才能正確使用,但我認爲這應該是足以讓你指向正確的方向。

這裏是鏈接LOD Overview。還有一些Jedi LODexamples。希望這可以幫助。