マクロ変数に小数点数を格納し、加算・減算等の算術演算を行いたいのですが、可能でしょうか。
原則として、SAS マクロ変数値は文字値として処理されます。 %EVAL関数を使うと、整数としての演算は行えます。
小数部を持つ値の算術演算が必要な場合は、DATAステップで演算を行い、PUT関数と適切なフォーマットを使用して文字値に変換し、 その結果をマクロ変数に変換する必要があります。
%let A=2.5;
%let B=3.7;
data _null_;
A=symget('A');
B=symget('B');
C=A+B;
call symput('C',trim(left(put(C,best.))));
run;
%put &C;
Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!
コミュニティの基本的なガイドラインについてご説明します。まずは、こちらをご参照ください。
SAS Support CommunitiesのFAQはヘルプに記載されています。参照方法は、こちらからご確認ください。
Japan SAS Discussionページに質問や意見(メッセージ)を投稿/返信する方法を簡単にご説明します。