外部ファイルに格納された変数を使用してファイルを書き込もうとしています。私はラインホルダー(@@文をput文)とループを使って問題があります。私はファイル内のいくつかの場所に変数を置くのが好きですが、私はそれらの変数の各行でリビットを繰り返しています。私はちょうどそれらの変数を一度にチャンクとして配置したい。変数を使用して行を保持してループを使用するSAS書き込みファイル
data _null_;
set merged;
file 'c:outfile.txt';
put @1 "A" @4 &totaln.;
do i=1 to &totaln;
put @1 i @4 "L3 2 DW 1.7" @17 a @28 b @40 c @@;
end;
put;
put @1 "OL" @4 &totaln.;
do j=1 to &totaln.;
put @1 j put @4 "L3 2 DW 1.7" put @17 av @28 bv @40 cv @@;
end;
put;
put @1 "CI &totaln. AO";
put @1 "OP";
put @1 "KO" @4 "SL";
run;
& totaln:ここ
は、私が書いたコードです。私が作成したマージされたファイルの総数です。 'Merged'にはa、b、c、av、ab、ac変数が含まれています(その行は約19個です)。だから私は、NEのtotaln行未満のa、b、c変数の19行が必要です。次に、OLの下のav、bv、cvの場合と同じことが行われ、outfileの最後にCIのOPとKo行の3行が表示されます。がマージ:
ABCのAV BV交流CNT
0.0268 676.9155 0.0347 0.9620294118 -2.131070959 0.031533299 1
0.0215 704.6740 0.2240 0.7738647059 -1.185638164 0.3506849035 2
0.0430 736.3752 0.2053 1.5611941176 -0.442240668 0.2434476134 3
0.0223 727.6945 0.1752 0.8075882353 -0.833957317 0.1725987826 4
0.0220 715.3714 0.1187 0.7434058824 -0.991003252 0.120438949 5
0.0287754.1052 0.1824 0.8567470 588 0.126161198 0.1685302022 6
outfilleルック:
NE 6
1 L3 2 DW 1.7 0.0268 676.9155 0.0347
2 L3 2 DW 1.7 0.0215 704.6740 0.2240
3 L3 2 DW 1.7 0.0430 736.3752 0.2053
4 L3 2 DW 1.7 0.0223 727.6945 0.1752
5 L3 2 DW 1.7 0.0220 715.3714 0.1187
6 L3 2 DW 1.7 0.0287 754.1052 0.1824
OL 6
1 L3 2 DW 1.7 0.9620294118 -2.131070959 0.031533299
2 L3 2 DW 1.7 0.7738647059 -1.185638164 0.3506849035
3 L3 2 DW 1.7 1.5611941176 -0.442240668 0.2434476134
4 L3 2 DW 1.7 0.8075882353 -0.833957317 0.1725987826
5 L3 2 DW 1.7 0.7434058824 -0.991003252 0.120438949
6 L3 2 DW 1.7 0.8567470588 0.126161198 0.1685302022
CI 6 AO
OP
KO SL
:
はこれを試してみてください。また、各PUTステートメントにはセミコロンが必要です... DO-ENDには、同じ行にいくつかのputステートメントがあります。私は、誰かが成功したサンプルを見ることなくこの問題を解決できるのではないかと疑います。入力データとその表示方法を投稿します。 –
のデータは次のようにマージされます。 – user634455