【问题标题】:SAS: Need to count number of instances per idSAS:需要计算每个 id 的实例数
【发布时间】:2017-08-01 05:18:43
【问题描述】:

假设我有 table1:

id  value1  value2 value3
1   z       null    null
1   z       null    null
1   null    y       null
1   null    null    x
2   null    y       null
2   z       null    null 
3   null    y       null
3   null    null    null 
3   z       null    null


id  value1  value2 value3
1   z       null    null
1   z       null    null
1   null    y       null
1   null    null    x
2   null    y       null
2   z       null    null 
3   null    y       null
3   null    null    null 
3   z       null    null

我有table2:

id  
1  
2  
3  

我想计算每个 id 的每列中的值的数量,以得到这样的输出。 (例如 id 1 有 2 个 z,一个 y 和一个 x)

 id value1 value2  value3  
  1   2      1      1     
  2   1      1      0   
  3   1      1      0

需要在 SAS 中执行此操作。在 Oracle 中有一个这样的例子,但在 SAS 中没有。

【问题讨论】:

标签: sql count sas unique distinct-values


【解决方案1】:

如果我理解正确,这是一个使用 proc sql 的简单查询。对于第一个表中的所有 id:

proc sql;
    select id, count(val1) as val1, count(val2) as val2, count(val3 as val3)
    from table1
    group by id;
run;

count() 计算列或表达式中非NULL 值的数量。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-06
    • 1970-01-01
    • 1970-01-01
    • 2018-01-23
    • 1970-01-01
    • 2021-02-06
    相关资源
    最近更新 更多