BookmarkSubscribeRSS Feed
omega1983
Calcite | Level 5

I have variables that have spaces

Example Variable Names

B GGR

F CCR

in my program I converted the variables using an assignment as follows:

data test;

set test1;

B_GGR = 'B GGR',n;F_CCR='F CCR'n;

run;

I get errors

B GGR is not a valid sas name.

F CCR is not a valid sas name.

Should not the use of the '',n resolve the issue with variables that have spaces?

 

2 REPLIES 2
Linlin
Lapis Lazuli | Level 10

do you want label your variables or create new variables?

data have;

input B_bb$;

cards;

AA

BB

;

data want;

  set have;

  label b_bb='B BB';

proc print data=want label;

run;

                                                        Obs    B BB

                                                         1       AA

                                                         2       BB

Reeza
Super User

If you truly have variables with spaces in the name then yes, the ''n notation should allow them to work, however SAS will sometimes convert them itself, but leaves the labels with the spaces.

You can run a proc contents on your dataset to see if that happened.

You can also try the

option validvarname=any;

to see if that helps. 

hackathon24-white-horiz.png

2025 SAS Hackathon: There is still time!

Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!

Register Now

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

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
  • 1285 views
  • 0 likes
  • 3 in conversation