2016-09-14 5 views
0

当社の元チームメンバーによって書かれたSASコードでは、記号-<を使用しています。私が試すことができる限り、それはLE(< =)を意味し、 a -< bの値ですが、LHSではありません。誰でもこれを確認できますか?また、他の言語でも有効ですか?SAS以下の記号

私は可能な限りSASの条件文のシンボルバージョンから遠ざかる傾向がありますが、まあまあ...と思っていました。近いうちに同様のコードを翻訳しなければならないかもしれません。

proc format; 
    value score 
    low -< 100 = 'Low' 
    200 -< 300 = '200 -< 300' 
    300 -< 400 = '300 -< 400' 
    400 -< high = 'High' 
    ; 
run; 
+1

さらに詳しい情報を提供できますか? ' - <'は有効な比較演算子ではありませんが、フォーマット定義の一部として有効な構文です。 – Tom

+0

例は次のようになります。 'proc format; 値スコア 低 - <100 = '低' 200 - <300 = '200 - <300' 300 - <400 = '300 - <400' 400 - <高= '高'; run; ' – Zephyr

+0

フォーマットに謝罪する - ブロックすることができない:/ – Zephyr

答えて

3

これは比較演算子ではありません。これは、書式定義で値の範囲を指定する構文の一部です。ドキュメントに関連する説明があります。

(<)より小さい記号を使用して範囲から値を除外できます。ある範囲内の最初の値を除外する場合は、値の後に<を置きます。ある範囲内の最後の値を除外する場合は、値の前に<を置きます。例えば、以下の範囲が0を含まない:

0<-100 

同様に、以下の範囲100は含まれない。

0-<100 

場合ハイエンドの値1つの範囲の下端にも表示され、<の非包含表記を使用しない場合、PROC FORMATはその値を最初の範囲に割り当てます。

'AA'-'AJ'=1 'AJ'-'AZ'=2 

あなたが「B未満にから」の意味としてa -< bを読むことができる:例えば、以下の範囲で、値AJは、最初の範囲の一部です。同様にa <- bは、「より大きいaからb」として読み取ることができます。

+0

OK - 明確化のおかげで:) – Zephyr

関連する問題