Ich habe einen Datensatz namens monatliche Zahlungen, die in einem Ordner befindet ich habe "Training" zugewiesen und es hat eine variable Zahlungen.SAS 9.4 Macro Eval Funktion Probleme
Ich möchte 'Zahlungsart' ausgeben, die "hohe Zahlung" ist, wenn die Zahlung> 400 und "niedrige Zahlung" andernfalls.
Ich halte diesen Fehler
ERROR: DS-00075 : Parsing error occurred while trying to %EVAL an expression: Invalid syntax found in call to %EVAL**
Kann mir jemand sagen, was ich falsch mache?
%LET root=D:\Users\Data;
libname training "&root.";
%LET dataset=training.monthlypayments;
%LET outlib=out;
%LET outfile=monthlypaymentsclassified;
%LET variable=payment;
%IF %EVAL(&VARIABLE.>400) %THEN %DO;
data &outlib..&outfile.;
set &dataset.;
paymenttype="high payment";
run;
%ELSE %DO;
data &outlib..&outfile.;
set &dataset.;
paymenttype="low payment";
run;
%END;
Warum haben Sie eine '% IF'-Anweisung geschrieben, als Ihre Problembeschreibung etwas beschreibt, das Sie mit einer' IF'- oder 'WHERE'-Anweisung tun würden? – Tom
Ich wurde gerade dieses Skript übergeben, um zu beheben, ich lerne immer noch nur die Grundlagen des Makros. Also sollte ich nur eine If-Anweisung für die Eval-Funktion haben? – PropK