問題タブ [sas-iml]

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 投票する
3 に答える
132 参照

sas - サンプリングされたマクロ変数定数の保持

うまくいけば、簡単な答えです。私はシミュレーション研究を行っています。ここでは、1,000 回程度の複製ごとに、一様分布 U(25,200) から乱数の個体 N をサンプリングする必要があります。1 つのレプリケーションのコードを以下に示します。

SAS と IML の両方で後続の DATA ステップと DO ループで N 変数を繰り返し呼び出す必要があるため、これらのマクロ変数は両方とも DATA ステップの外で作成しました。

問題は、レプリケーション内で N を呼び出すたびに、U が再サンプリングされ、必然的に N が変更されることです。したがって、N はレプリケーション内で一定に保たれません。この問題は、以下のコードに示されています。ここでは、最初に N を変数 (個人間で一定) として作成し、DO ループを使用して各個人の X の予測子の値をサンプリングします。N の値が個体の総数と同じではないことに注意してください。これも問題です。

私がしなければならないことは、1 回の複製全体を通して何らかの方法で U を一定に保ち、次に複製 2 のために再サンプリングできるようにすることであると推測しています。U を一定に保つことにより、N は必然的に一定に保たれます。

マクロ変数を使用してこれを行う方法はありますか?

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

sas - IML に要素が欠落している SAS マトリックス プロダクト

SAS IML では、欠損値が含まれている場合、乗算して 2 つの行列の積を取得できないというのは正しいですか??

SAS でこの問題の解決策はありませんか???

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

sas - SAS/IML で do ループを使用して複数のデータセットを作成する方法は?

私は次のコードを試していました:

したがって、do ループの完了後に 20 個のデータ セットを取得できると期待しています。SASで可能ですか?マクロを使用して実行できますが、 内でマクロを使用するのは好きではありませんPROC IML

前もって感謝します。

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

sas - SAS での行列乗算のループの実行

m1 という 6*6 のマトリックスがあり、SAS で Do Loop を使用して、m2=m1*m1; のようなマトリックスを作成したいと考えています。m3=m2*m1; m4=m3*m1 ... mi=m(i-1)*m1.

ここに私が書いたものがあります:

cat(m,1) が正しくない可能性があるため、機能しません。これに Do ループを使用するにはどうすればよいですか? お時間をいただき、ありがとうございました。

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

algorithm - sasで順列を使用してanovaを実行する方法

SASで順列を使用してANOVAを実行するにはどうすればよいですか? その目的は、実行時間を短縮し、出力を印刷する代わりに保存することです。私はかつて iml を使用して、順列を使用した対応のある t 検定を実行しました。うまくいきました。しかし、iml も ANOVA で順列を実行できるかどうかは少し心配です。順列を生成するために multtest も試しました。multtest permute は長い道のりですが、iml は広く行きます。どちらがより効率的でしょうか? ありがとう!

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

r - svd() と call svd、R、IML の違い

私はパッケージを R から IML に翻訳していますが、これは完成したらオンラインで無料になります :)。大きな行列を分解すると、異なる結果が得られます。どちらの結果も同じように見えますが、たとえば、U の最初の 2 列を取り出して U'*U を実行すると、2x2 行列はまったく異なります ( U_11 = 1.1e-17 および U_11 =1.4e-17)。違いは非常に小さい (3e-18) ため、各ソフトウェア、SAS IML および R が使用する小数点以下の桁数に関連している可能性があると思いました。このトピックについてもっと知っている人はいますか? どうすればこれをテストできますか? ありがとうございました。

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

sas - ベータ分布に従う相関確率変数を生成する

SAS を使用して相関する 2 つのベータ分布変数のランダム値を生成する必要があります。対象となる 2 つの変数は、次のように特徴付けられます。


X1とがmean = 0.896ありvariance = 0.001ます。

X2とがmean = 0.206ありvariance = 0.004ます。

X1およびの場合X2p = 0.5、ここでpは相関係数です。


SAS を使用して、関数 を使用してベータ分布を指定する乱数を生成する方法を理解していますX = RAND('BETA', a, b)。ここで、abは、平均と分散から計算できる変数Xの 2 つの形状パラメーターです。ただし、 p = 0.5で相関していることを指定しながら、両方の値を同時にX1生成したいと考えています。X2