前のページ|次のページ

NLDECSEPARATORシステムオプション

小数点にロケール依存の数値出力を生成するか、引き続き米国英語設定の数値形式を出力するかを指定します。

該当要素: 構成ファイル、SAS起動時、OPTIONSステートメント、[SASシステムオプション]ウィンドウ
PROC OPTIONS GROUP= LANGUAGECONTROL
別名: NLD
デフォルト: NONLSDECSEPARATOR

構文

NLDECSEPARATOR | NONLDECSEPARATOR

必須引数

NLDECSEPARATOR

小数点に対するロケール依存の数値出力を有効にします。

NONLDECSEPARATOR

小数点に対するロケール依存の数値出力を無効にします。

詳細

小数点としてピリオドを使用する数値を生成する場合は、NLDECSEPARATORオプションとともにBESTDOTX出力形式を使用してください。BESTDOTX出力形式を使用しないと、出力にカンマが含まれます(例: 1,2)。SASでは、この出力を数値として解釈しません。値が次の割り当てステートメントで使用される場合、エラーが発生します。
CALL SYMPUTなどの一部のSAS関数は、数値の文字列への変換にデフォルトでBEST出力形式を使用します。NLDECSEPARATORが有効の場合、BEST出力形式は現在のロケールの指定に応じた区切り文字を使用します。ロケールで区切り文字としてピリオドが使用されている場合、出力される文字列はこの値を数値として評価する以降のSASステートメントで使用できます。ただし、区切り文字がカンマなど他の文字である場合は、SASコードがそれを数値として使用しようとしたときに構文エラーになります。
このタイプのエラーを避けるため、値の出力形式にBESTDOTXを使用してからCALL SYMPUTステートメント内で代入してください。BESTDOTXは、出力で小数点として必ずピリオドを使用します。たとえば、次のSASコードでは、変数Xの値の出力形式にBESTDOTXが使用されてから、変数Xの値がマクロ変数&MACXに代入されています。&MACXの値が以降でSAS変数Yに代入されても、構文エラーになりません。
data a; x=1.2; CALL SYMPUT('macx', put(x, bestdotx.)); run; data b; y=&macx run;

関連項目:

前のページ|次のページ|ページの先頭へ