Check if a variable exists

I want to check if a variable exists, and if not, create it.

+5
source share
4 answers

You can use the open()& functions varnum(). The non-zero output from varnum()indicates that the variable exists.

data try; 
    input var1 var2 var3;
    datalines;
    7 2 2
    5 5 3
    7 2 7
; 

data try2; 
    set try;
    if _n_ = 1 then do; 
        dsid=open('try'); 
        if varnum(dsid,'var4') = 0 then var4 = .; 
        rc=close(dsid);
    end;
    drop rc dsid;    
run;
+8
source
data try2;
    set try;
    var4 = coalesce(var4,.);
run;

(assuming var4 is numeric)

+5
source

var4 . , , , .

data try; 
    input var1 var2 var3;
    datalines;
    7 2 2
    5 5 3
    7 2 7
; 

data try2; 
    set try; 
    var4 = var4; 
run;

, var4 , , , attrib, / ..

+1

/, (SAS 9.4). .

    data try; 
input var1 var2 var3;
datalines;
7 2 2
5 5 3
7 2 7
; 

    data try2; 
length var4 $20;
length var5 8;
set try; 
var4 = var4; 
if var4 = ' ' then var4 = 'Not on Source File';
run;
0

All Articles