2016-07-05 222 views
1

我是Spotfire新手。百分比計算 - SpotFire

我有一個數據集,如下所示。我需要計算一年中「遲到」事件的百分比。例如,2016年「遲到」事件百分比是(3/14)* 100。

任何人都可以說spotfire這個計算的自定義表達式?

2018  OTC 
2017  InProgress 
2017  InProgress 
2017  OTC 
2016  Late 
2016  OTC 
2016  OTC 
2016  OTC 
2016  OTC 
2016  Late 
2016  Late 
2016  OTC 
2016  OTC 
2016  InProgress 
2016  InProgress 
2016  OTC 
2016  InProgress 
2016  InProgress 
2015  OTC 
2015  OTC 
2015  Late 
2015  Late 
2015  OTC 
2015  OTC 
+0

請給出一個例子,說明你到目前爲止所嘗試過的方法,以及這些嘗試所面臨的問題,https://soundcloud.com/dr-meaker/sets/dirt-soul-album –

回答

3

如果要將計算列插入表中,請使用下面的公式。由於您沒有在數據集中指定它們,因此我編制了[Status][Year]列。

Count(If(Trim([Status])="Late",[Status])) over ([Year])/Count() over ([Year]) as [Percent Late for the Year] 

如果您在交叉表這樣做,然後設置你的水平軸[Status],設置您的垂直軸[Year],然後設置單元格值:

Count() THEN [Value]/Sum([Value]) OVER (All([Axis.Rows])) 

在這兩種情況下,我不會像你在你的問題中那樣100倍。相反,將列的格式更改爲PERCENTAGE。您可以通過編輯>列屬性>格式化並選擇百分比來完成第一個解決方案(插入列)的操作。在交叉表中右鍵單擊>屬性>格式並選擇百分比作爲軸值。

+0

嘗試了第一個公式「SCSIMON」,它的工作原理。謝謝。我早些時候嘗試過相同的公式,但是沒有最後一部分「作爲[今年晚]」。我可否知道最後一部分「作爲[今年晚]的百分比」在計算中有什麼不同?是「[今年晚了]」的語法?請澄清 – pradeep

+0

這就是專欄的名稱。如果你不把[Some Column]作爲你的列名,它會把整個表達式作爲你的列名。您可以將其更改爲您想要列名的任何內容。 – scsimon

+0

忘了補充,它根本不會改變計算。 – scsimon