2016-05-10 5 views
2

変数に値を保存し、それを条件文で使用したいとします。これを明確にするために、もっと簡単な例を挙げます:動物(犬と猫)の種類、年齢(1か2)、体重を持つデータベースがあるとします。私は、以下の条件をしたい:条件文で変数を使用する

IF(animal=dog & age=1 & weight>= percentile75) Wdogs=1. 
EXECUTE. 
IF(animal=dog & age=1 & weight<percentile75) Wdogs=0. 
EXECUTE 

は私が自動的にpercentile75を計算し、私は私が持っている任意のデータベース内のコードを使用できるように、変数に保存したいです。また、データベースを変更してコードを実行すると、変数を書き換えたいと思います。これを行う方法はありますか?

どうもありがとう

答えて

1

あなたはn個のグループに重みを分割するために、RANKを使用することができます。このコマンドは新しいランク変数を作成し、それを条件式で使用することができます。 それぞれの関連するサブグループで別々にランク付けを行うには、BYサブコマンドを使用します。代わりに、2の

RANK VARIABLES=weight (A) BY animal weight/NTILES(4). 
IF(animal=dog & age=1 & Nweight=4) Wdogs=1. 
IF(animal=dog & age=1 & Nweight<=3) Wdogs=0. 
EXECUTE. 

あなたが使用して構文の行を保存することができます(もし:あなたの例では、各動物/体重サブグループは、重量に別々に四分位にランクされ、それ以降のコマンドは、新しい変数を使用します コマンド):

IF(animal=dog & age=1) Wdogs=(Nweight=4). 
+0

ありがとうございます。私は、各サブグループのパーセンタイルが必要だと言っていることを忘れていました。たとえば、私は犬の体重のパーセンタイルと年齢= 1が必要です。あなたのコードでそれを行うことはできますか? – Jane

+0

私のコードはすでにそうしています--BYサブコマンドを見てください。私はそれを明確にするための編集を追加しました。 –

+0

驚くばかりの仲間。私はあなたのコードでやろうとします。ありがとうございます。 – Jane

1

まず最初メイトは、それらがコマンドを(彼らは不要であり、デフォルトのオプションでnoobのポイントとクリッカーとしてあなたを裏切る)EXECUTE負けています。あなたが複数の変数を使ってそれを行う必要があると分かっている他の投稿から。 VARSTOCASESに挑戦し、現在のRANKをBYで維持し、Barbie Queueにf'ing Shrimp(またはPRAWN)を入れて、あなたの人生を単純化してください。

関連する問題