BookmarkSubscribeRSS Feed
micksom
Calcite | Level 5

All,

I have a large dataset in which the majority of the cells are not populated, indicated by a '.'. This was a result of creating columns when I executed a proc transpose.

ABC

A + B + C

(CALCULATION)

1.1015.
220102050
3....

1. In datastep when I try to calculate A + B + C for row 1 in the above example, the returned value is . ,rather than 25. How do I perform a sum across columns when one or more of the fields is empty.

2. Alternatively, is there a quick way of doing an if A = . then A = 0 across two hundred columns, without having to do an if statement for all columns. Can this be done across the whole database.

3. Alternatively, is there something I can do in the proc transpose which populates the fields as 0s rather than . s

Any help would be greatly appreciated !

Regards,

Michael

2 REPLIES 2
Haikuo
Onyx | Level 15

Sum() function: Sum(a,b,c)

data_null__
Jade | Level 19

Better still leave out the transpose and just SUM the values using PROC SUMMARY using the same BY statement you used in PROC TRANSPOSE.

CFC_SAS_Communities_400x225.jpg

Call for content now open!

It's your turn to help shape SAS Innovate 2027. Share your expertise and inspire the SAS community.

Submit your proposal →

What is Bayesian Analysis?

Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 2 replies
  • 2191 views
  • 0 likes
  • 3 in conversation