[英]How to calculate aggregate function COUNT(DISTINCT ) over values previous to one value?
[英]How to aggregate over only distinct values in SAS Visual Analytics
假設我們將下表加載為SAS Visual Analytics中的數據源:
======================= Day | objectID | Value 1 | 1 | 1.5 1 | 2 | 1.5 1 | 3 | 3.2 2 | 1 | 1.5 2 | 2 | 1.5 3 | 1 | 1.5 3 | 4 | 4.3 =======================
現在,我想獲得這3天中所有不同的objectID的總和(假設該值在幾天內沒有變化)。 文學方面,我想得到:
value_for_objectID_1 + value_for_objectID_2 + value_for_objectID_3 + value_for_objectID_4
在這種情況下為1.5 + 1.5 + 3.2 + 4.3 = 10.5
以SQL查詢的形式:
select sum(a.value) from (select distinct objectID, value from DATA_TABLE_ABOVE) a;
據我所知,SAS Visual Analytics不在“報表設計器”中的選定數據源內提供SQL查詢,因此如何能夠有條件地聚合值(在這種情況下,是在另一列的不同值上)。 任何提示/建議都將非常有幫助。
嘗試這個:
proc sort data=have;
by objectid;
run;
data want;
set have end=last;
by objectid;
retain sum;
if first.objectid then sum+value;
if last then output;
keep sum;
run;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.