Ich schreibe eine Stato .do-Datei und möchte Standardwerte angeben, wenn der Benutzer keine Parameter angibt. Um dies zu tun, möchte ich überprüfen, ob ein Makro nicht definiert ist. Ich habe einen hacky Weg gefunden, dies zu tun:
%Vor%Aber ich würde gerne wissen, ob es einen idiomatischen Weg dafür gibt.
Wenn es nicht definiert ist, ist der Inhalt des Makros leer. Sie können dies tun:
%Vor% Die Anführungszeichen werden nicht wirklich benötigt, wenn das Makro eine Zahl enthält. Die Funktion missing(x)
kann Zeichenfolgen und Zahlen verarbeiten. Es ist ein bisschen wie das Testen von (x=="" | x==.)
Die Frage nach einem idiomatischen Weg, dies und über Stata-Programmierer zu tun
%Vor%ist bei weitem der am häufigsten verwendete Test, ob ein Makro definiert ist. Makros enthalten Zeichenfolgen, wenn sie definiert sind. Dies ist die allgemeine Verwendung. Die Verwendung numerischer Zeichen ist nur ein Sonderfall.