DATA Step, Macro, Functions and more

Error in Summary Function

Accepted Solution Solved
Reply
Contributor
Posts: 70
Accepted Solution

Error in Summary Function

Hello,

Thanks for checking!

 

My goal is to get the sum of count of 2 variables (num_id1 and num_id2)  in separate column as 'IDCounts'.

I am getting error prior computing that new column.

 

 

My output should be like this:

num_id1   num_id 2   IDcounts(Newcolumn)

2                   4                      6

4                   4                      8

 

 

proc sql;
create table test.number
as select name, count(num_id1) as count1,

count(num_id2) as count2,
sum(count(cin_id1)) as grand_sum, (Tried this way, still getting error)
sum(count1) as grand_sum1

from test.data

run;

 

 

ERROR: The SUM summary function requires a numeric argument.
ERROR: Summary functions nested in this way are not supported.
ERROR: The following columns were not found in the contributing tables: count1.

 

 


Accepted Solutions
Solution
‎07-12-2017 02:45 PM
Super User
Super User
Posts: 7,080

Re: Error in Summary Function

[ Edited ]
Posted in reply to Kalai2008

Looks like you might be confusing the SQL aggregate function SUM() with the SAS function SUM(,).

The first one takes one argument and calculates the sum across observations. The second takes two or more arguments and sums the values in the same observation.

proc sql;
create table test.number as
  select name
      , count(num_id1) as count1
      , count(num_id2) as count2
      , sum(calculated count1, calculated count2) as grand_sum
  from test.data
  group by name
  order by name
;
quit;

View solution in original post


All Replies
Solution
‎07-12-2017 02:45 PM
Super User
Super User
Posts: 7,080

Re: Error in Summary Function

[ Edited ]
Posted in reply to Kalai2008

Looks like you might be confusing the SQL aggregate function SUM() with the SAS function SUM(,).

The first one takes one argument and calculates the sum across observations. The second takes two or more arguments and sums the values in the same observation.

proc sql;
create table test.number as
  select name
      , count(num_id1) as count1
      , count(num_id2) as count2
      , sum(calculated count1, calculated count2) as grand_sum
  from test.data
  group by name
  order by name
;
quit;
Contributor
Posts: 70

Re: Error in Summary Function

Thank you! It worked..
☑ This topic is solved.

Need further help from the community? Please ask a new question.

Discussion stats
  • 2 replies
  • 113 views
  • 0 likes
  • 2 in conversation