長年のユーザー、初めてのポスター。私はIMLに非常に慣れておらず、以前にRで遊んだことがあります。現在、SAS/IML でネットワークを簡単に計算できるように、隣接リストを作成しようとしています。私が取り組んでいるファイルは巨大です。SASfile を使用し、メモリに隣接リストを持たない実装を行っています。空のファイルを作成し、(特定のエージェントに対応する) 特定の行から読み取ることは、「最終」ステップである観測全体の更新まですべてうまくいきます。
以下は、最終段階まで動作する IML コードです。
proc iml;
/* initialize vars*/
checkObs = 2;
numCol = 5;
db = "myTestDataBase";
nObs = 5;
temp = {};
myList = J(1, numCol, 0);
nVarToUpdate = 2;
/* create empty database */
create (db) from myList;
append from myList;
close (db);
do i = 1 to (nObs-1);
edit (db);
append from myList;
close (db);
end;
/* read index checkObs and write to temp*/
edit (db);
read point (checkObs) into temp; /* Read an entire row*/
temp[nVarToUpdate] = 1; /* I would like to update some values*/
/* I want to replace point chekObs with the whole of vector temp*/
replace point checkObs var _all_;
close (db);
print temp;
私の目的は、行の順序をそのままにしながら、観測全体 (行) を置換/更新することです。何か案は?