問題タブ [sas]
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.
sas - BASE SASの不均衡な見積もり条件から抜け出すための最善の秘訣は何ですか?
ベースSASプログラマーとして、あなたはドリルを知っています:
不均衡な引用符を含むSASコードを送信すると、閉じられていない引用符だけでなく、閉じられていないコメント、マクロ関数定義、および実行の欠落も発生します。または終了します。声明。
これらの不均衡な引用符が気にならないようにするための最善の秘訣は何ですか?
sas - SASデータ(テーブル構造を含む)を単一のフラットファイルに保存する
SASデータテーブルをフラットファイル(または、バイナリファイルではなく、一度呼び出された「ASCIIファイル」)に変換する必要があります。また、元のSASテーブルごとに1つのフラットファイルのみ。難しいのは、フラットファイルに元のSASテーブルの構造情報も含めるようにすることです。具体的には次のとおりです。
- 変数/列名
- 変数/列ラベル
- 変数/列タイプ
- 変数/列の長さ
- 変数/列形式
- 変数/列の情報
追加情報:
- 小さなデータ(<100 obs)を変換するだけで済みます。
- パフォーマンスは問題ではありません(妥当な制限内)。
- フラットファイルは、元のSASテーブルを再作成するための基礎を形成する必要があります。DATAまたはPROCステップでファイルをテーブルとして直接使用できる必要はありません。
標準のSASテーブル、トランスポートファイル、XPORTファイルなどはすべてバイナリ形式のファイルであり、SASおよびCSVファイルの標準のXMLテーブル形式はテーブル構造を保持しません。したがって、明らかにこれらのオプションは役に立ちません。
私の最良の選択肢は何ですか?
xml - SAS で XML データを読み取るときのデータ型の設定
SAS で XML データを読み取るときに、データ型を制御する必要があります。XML データは、SAS の XML ライブラリ名エンジンを使用して書き込まれ、アクセスされます。
SAS は、列の内容に基づいてデータ型を推測しているようです。文字列の XML データに「20081002」と書き込むと、数値変数として読み戻されます。
例:
XML データでは最後の列のみが数値データ型として定義されていますが、それを WORK ライブラリにコピーすると、列text_charだけが文字になります。残りの 3 つは数値です。
SAS で XML データを読み取るときにデータ型を制御するにはどうすればよいですか?
sas - メジャーの値をフィルター処理して、MDX で計算されるメンバーを定義する
MDX で計算されるメンバーを定義する必要があります (これは SAS OLAP ですが、とにかくさまざまな OLAP 実装を使用している人々からの回答をいただければ幸いです)。
新しいメジャーの値は、追加のフィルター条件を適用して、既存のメジャーから計算する必要があります。例でより明確になると思います:
- 既存のメジャー: 「総トラフィック」
- 既存のディメンション: "方向" ("イン" または "アウト")
- 計算されたメンバー「着信トラフィック」を作成する必要があります。これは、追加のフィルター (方向 = 「受信」) を使用して「総トラフィック」に等しくなります。
問題は、私が MDX を知らないことと、スケジュールが非常にタイトであることです (初心者の質問で申し訳ありません)。私が思いつくことができる最高のものは次のとおりです。
特定の方向を持つセルを除いて、これはほとんど機能します:
したがって、Direction の「組み込み」フィルターが独自のフィルターでオーバーライドされているように見えます)。「組み込み」フィルターと独自のフィルターの交差点が必要です。私[Direction].[(All)].[In]
の直感は、評価されるセルの固有の座標と交差することに関係しているということでしたが、最初に主題を読まずに何が必要かを知るのは難しいです:)
【追記】結局こうなりました
..しかし、少なくともSAS OLAPでは、これにより、基礎となるデータセットに対して([in]の値を計算するために)余分なクエリが実行されるため、最終的には使用しませんでした。
sas - sasワンライナー
sas でワンライナーを実行する方法はありますか、それともファイルを作成する必要がありますか? perl の -e フラグのようなものを探しています。
r - R に精通している場合に SAS を学習するためのリソース
SAS を独占的に使用する傾向があるいくつかの業界に興味があるため、SAS について学びたいと考えています。ただし、統計プログラミングについて何も知らないと仮定するリソースに行き詰まるのは避けたいと思います。R での統計経験のあるプログラマー向けの良いガイドはありますか?
ありがとう、スティーブン
sas - SAS では、データ ステップの外で、マクロ変数の文字を空白に置き換える最良の方法は何ですか?
SAS では、データ ステップの外で、マクロ変数の文字を空白に置き換える最良の方法は何ですか?
使い勝手が良さそうTRANSLATE
な機能です。ただし、%SYSFUNC
この関数で使用する場合、パラメーターは引用符で囲まれません。代わりに空白を使用する必要があることをどのように示しますか?
sas - SAS 8.2 で 2 つの大きなデータセットをマージ/結合する効率的な方法
許容できない応答時間で次のオプションを試しました-インデックス「キー」を作成しても役に立ちませんでした(注:両方のデータセットで「キー」が重複しています):
=== または ===
sas - SAS: autoexec ファイルのタイミング/表示用のデータセットへのフォーマットの適用
これが背景です。長くなってすみません:
私は 3 つの異なるプロジェクトで SAS プログラミングを行っています。各プロジェクトには、独自のメイン プロジェクト フォルダーがあります。各メイン プロジェクト フォルダーには、formats フォルダー (フォーマット カタログを含む) が含まれており、その他のいくつかのフォルダーが含まれており、それぞれにプログラムとデータセットが含まれています。私はほとんどの作業をバッチ モードで行っているため、通常、SAS は開いていません。ただし、SAS でデータセットを開き、特定のものを調べたい場合があります。これを行うと、フォーマット カタログがデータセットと同じフォルダーにあることはないため、SAS は適切なフォーマット カタログを探す場所を認識しません。そのため、現在、オプションを指定する autoexec.sas ファイルを使用しnofmterr
て、データセットが開くようにしています。
ただし、適切なフォーマットでデータセットを開くことができるようにしたいと思っています。fmtsearch
どのプロジェクトに取り組んでいるかを尋ね、それに応じてオプションを設定するダイアログ ウィンドウを使用する別の autoexec プログラムを作成しました。最初に SAS を開き、次にデータセットを開く場合、これはうまく機能します。しかし、SAS がまだ稼働していない場合に、データセットをダブルクリックして開こうとすると、次のようになります。autoexec ファイルの実行が開始され、autoexec ファイルの実行が完了する前に、SAS がデータセットを開こうとします。したがって、nofmterr
設定した場合、データセットはフォーマットなしで開きます。設定していない場合nofmterr
、データセットはまったく開きません。
では、私の質問は次のとおりです。データセットを開こうとする前に、autoexec ファイルの実行が終了するまで SAS を待機させる方法はありますか? または、問題を回避する別の方法はありますか? (3 つの形式ファイルすべてをオプションに追加したくありませんfmtsearch
。プロジェクトが異なれば、同じ名前の形式が異なる可能性があるためです。)
sql - プログラミング基金
プログラミングの基礎を学び始めるための最良の方法を誰かが私に提案してくれるでしょうか。私はデータベースに関連するSQLおよびSAS関連のテクノロジーに携わっています。
ご意見をお聞かせください