問題タブ [sas-macro]

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 に答える
1088 参照

sas - SASでデータセットを動的に削除およびインポートする方法は?

mar2009.txt、mar2010.txt、mar2011.txt、mar2012.txt の 4 つのカンマ区切りファイルがあります。

ライブラリをクレンジングして、それらのデータセットを動的にインポートしようとしています:

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

sql - マクロを使用して SAS テーブルの構築を最適化する

次のようなマクロを使用してテーブルを動的に構築する SAS プログラムがあります。

これは私のコードの簡略版です。%Advance_Yearsマクロは基本的に進み&current_year&previous_year1年のマクロ。ご覧のとおり、このテーブルは 1 年に 1 つの変数を取得します。問題は、このテーブルの行数が数十万に達する可能性があり、実行時間が急上昇し、完了までに数時間に達することです。

私は試してみましoption compress=yesたが、実行時間を短縮するのに役立ちましたが、それほど多くはありませんでした。実行を高速化するためのほとんどの SAS のヒントとコツを試しましたが、やはり大きな違いはありませんでした。32b で Base SAS 9.2 を実行しています。

変数を追加する手法について、私は間違った見方をしていると思います。ループごとにテーブルを上書きすると、実行効率に影響がありますか? はいの場合、これを可能な限り最も効率的なコードに書き直すにはどうすればよいですか? テーブルを「転置」して行を追加することはできないことに注意してください。前もって感謝します!

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

loops - SAS マクロ Do ループが解決しない

これが解決しない理由を誰かに教えてもらえますか:

理由は完全にはわかりませんが、いくつかの変数をいじってみると、テーブル名を t_&i マクロに割り当てようとしている最後の部分に問題があると思います。問題は、別のマクロ変数を呼び出そうとしているときにマクロ変数に名前を付けようとしていることにあると思います (i=0 のときに &i を呼び出してマクロ t_0 を作成しようとしています)。ロジックがかなり健全だと思うので、構文で何かを台無しにしたと思います。

ありがとう!