Help using Base SAS procedures

Keep character variables in merge

Reply
Contributor
Posts: 36

Keep character variables in merge

Hi.

If I merge two datasets where the first dataset does not include variable A and the second dataset includes the character variable A, then SAS will create a numeric variable A because this dataset was not set as the first dataset in the merge. Can I force SAS to keep A as a character variable although it is set as a second dataset in a merge?

data test;

set var_b_c textvar_a;

run;

If I have thousands of variables it is tricky to do it manually.

Super Contributor
Posts: 1,636

Re: Keep character variables in merge

Posted in reply to blackraven

I don't think your statement is true. you should post some sample data.

Contributor
Posts: 36

Re: Keep character variables in merge

Posted in reply to blackraven

I was truly surprised to see this, but it turned out I was too tired to notice value formatting was on. Thanks.

Super User
Posts: 10,020

Re: Keep character variables in merge

Posted in reply to blackraven

Change the order of these two datasets  ?

data test;

set  textvar_a  var_b_c;

run;

Super Contributor
Posts: 345

Re: Keep character variables in merge

Posted in reply to blackraven

Unable to reproduce the error using SAS 9.2.

Code:


data work.WithoutName;

       set sashelp.class(drop=Name);

run;

data work.test;

       set work.WithoutName sashelp.class;

run;


proc print data=sashelp.vcolumn(where=

(memname = 'TEST' and upcase(name) = 'NAME'))

noobs;

       var libname memname memtype name type;

run;


Proc print shows:

libname memname memtype name type

WORK TEST DATA Name char

Ask a Question
Discussion stats
  • 4 replies
  • 252 views
  • 0 likes
  • 4 in conversation