問題タブ [datastep]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1019 参照

sas - SAS Data Step プログラミング - データセットの説明 (obs=0)

以下の (間違った) 例で (obs=0) データ セット オプションを設定すると、データ ステップ ステートメントが処理されない理由を説明していただけますか?

私は通常、work.wrong と work.right の両方が同じ出力を持つことを期待します。

0 投票する
2 に答える
234 参照

sas - グループ内の分散を最小限に抑えた SAS での自動グループ化

そこで、自動グループ化を構築しようとしました。目標は、最小の分散を持つグループ化設定を選択することです。

つまり、以下のxとyを求めたいのですが、x,yは自然数で、

(分散(グループ1内)、Response分散Response(グループ2内)、分散(グループResponse3内))の合計が最小になるように。

ここに画像の説明を入力

私の考えは、2 つの do ループ (ネストされた) を持つことです。

次に、3 つのグループの分散 (グループ内の応答) の合計が最小になるグループ設定を選択します。

0 投票する
3 に答える
14314 参照

sas - sas に類似した名前の複数のデータセットを設定する

作業環境にさまざまな数のデータセットがあり、そのすべてが似たような名前 (name_abc、name_efg、name_1ky など) で始まるとします。データセットには同じ変数と特性があり、それらすべてを 1 つのデータセットに設定したいと考えています。 .

すべてのデータセットを入力せずに SAS でこれを行う方法はありますか? 作業環境で利用可能なデータセットの数に柔軟に対応できるようにする必要があります。

0 投票する
1 に答える
838 参照

sas - SQLではなくデータステップを使用してデータセットの列からマクロ変数を作成する方法は?

次の構文を使用して、SAS SQL プロシージャを介してマクロ変数を作成できます。

しかし、データステップにも同じ方法があるのだろうか。

私はデータセットを持っています。

MA以下のステートメントで呼び出されるマクロ変数を作成できます。

データステップでそれを行う方法は?

0 投票する
1 に答える
75 参照

sas - SAS: ファイルが存在することを確認してからスタックする

暦年やその他の変数で分割された一連のファイルを調べています。私がやりたかったのは、それらを会計年度ごとに (レコードに存在する日付変数に基づいて) 分割することです。たとえば、FY2010 ファイルを作成するには、CY2009 および CY2010 ファイル (これらのファイルを file_2009 および file_2010 と呼びます) をスタックし、FY2010 レコードにサブセット化する必要があります。ただし、どちらかまたは両方のファイルが存在しない可能性があります。私がやりたかったのは、ファイルの1つが存在しない場合は、もう1つを使用することです。両方が終了する場合は、両方を使用します。それ以外の場合は、何もしません。私が思いついた方法は、私が望むほどコンパクトではありませんでした。これを行う最善の方法に関するアイデアはありますか? ありがとう。

0 投票する
3 に答える
107 参照

sql - 重複する 2 つのデータセットで一意の組み合わせを選択する

たとえば、SAS では、データセット A (左下) に 5 つの ID があります。データセット B があります (右下にいくつかの A の ID が含まれている可能性があります)。必要なのは、A で 1 つの一意の組み合わせ (A は主要な結果のデータセット) を見つけることであり、B は同性、年齢範囲 5 以内、収入範囲10000 以内です。多くの b.id が a.id とマージされる可能性があります。しかし、これがキックです。b.id は 1 回しか使用できません。この場合、101 は 106 と結合し、102 は 111 と結合し、103 は 112 と結合し、105 は 110 と結合します。うまくいけば、それは十分に明確です。ありがとう!

結果

0 投票する
1 に答える
59 参照

sas - sas - アカウント ID によるラグ?

これにラグを使用する必要があるかどうかはわかりません。しかし、ここで私がやりたいことです。

これが私が持っているデータです...

これで終わりにしたい…

acct と sort_order でデータセットを並べ替えました。アカウントごとに、最初のタイプ (sort_order に基づく) を取得し、それをそのアカウントの各行にコピーします。たとえば、acct 111111 の最初のタイプは「標準」です。acct 111111 のすべての観測で、タイプとして「標準」が必要です。

ラグで次のことをやってみましたが、うまくいきません...

0 投票する
2 に答える
102 参照

duplicates - sas data ステップで by ステートメントが実際に行っていることは何ですか?

これは非常に単純なことのように思えますが、sas データステップの「by ステートメント」が実際に何をしているのか説明できません。いつ使用する必要があるかはわかっていますが、何をしているのかわかりません。

以下の例では、first.var と last.var の仮想 sas 列がその値を持っている場合の意味を理解しています。by ステートメントは、var initial と metal の周りにこれらの仮想列を作成していますか? 次に、sas はデータセット全体を 1 回スキャンしていますか?

print dups を実行すると、次のことが期待されます。