問題タブ [informat]

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

format - sas の format と informat

次のデータがあります。

*date7.informat でこれを読み取り、date9.format でデータを提示する必要があります。

*まず幅形式でデータを読み取るにはどうすればよいですか? また、車が完全に数値ではない場合に、日付の幅を 7 から 9 に変換するにはどうすればよいですか?

そのようなことをしようとするとき:

完全に数値ではないvarで数値形式を使用しているため、失敗します

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

character-encoding - SAS 特殊文字が入力の列の配置を乱す

informat の使用を教える演習で、.dat データ セットを sas に入力しています。これが私がこれまでに持っているものです。

これは、特殊文字/国際文字を含む行を除くすべての行で機能します。そのような:

これらの行は最初の通貨値 (@53 sales comma6.) でつまずき、その入力に対して無効なデータが見つかったことを示す警告がスローされ、欠損値 (.) が割り当てられます。

@ ポインターと informat w 値をいじってみると、特殊文字が列の配置から外れていることが明らかになるようです。これは可能ですか (特殊文字は、1 文字として出力されたとしても、実際には 2 ビット/スペースを占有します。単純な文字はありますか?解決?

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

format - 生データが乱雑な場合にSASの入力形式を使用して日付を読み取る

基本的に、入力形式を使用して乱雑なデータを SAS に読み込もうとしていますが、問題があります。生のtxtファイルに次の形式のデータの列があります。

RegDate の場合、0 = 欠落、それ以外の場合、日付は存在します。このデータを SAS に読み込み、ゼロに「NA」、日付に日付を指定して、データセットに出力したいと思います。

すべての日付が存在する場合、コードを使用できます

ただし、入力形式が日付を読み取るように設定されているため、ゼロが考慮されていないため、これを行っている上記のテキスト ファイルを読み取ることができません。

proc import ステートメントを使用する場合

best32 を使用しようとします。最初の行にゼロがあるためです。日付を読み込むことはできません。

そのため、何らかのカスタム フォーマットを作成する必要があります。これは、数値入力形式のみ、文字入力形式のみ、または画像入力形式 (日付に必要ですか?) に対して実行できます。1 つの変数に対して複数の形式を組み合わせる方法がわかりません。解決策は非常に簡単だと思いますが、オンラインで見つけることができないため、これが明らかな場合はお詫び申し上げます。a) IF-THEN ステートメントをフォーマットに入れ、入力に応じて異なる処理を行う方法はありますか? b) フォーマットを使用する必要があるように、純粋にテキストとしてデータを読み取ります。

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

sas - SAS は Formatt を使用して新しい変数を作成します

質問を考えています: informat を使用して新しい変数を作成する方法。like : 次のような情報があります。

そしてそのようなデータセット:

今、私はこのようなデータセットを持ちたいです:

私が作成した入力形式を使用して、数値変数 age を文字変数 agegroup に入れる方法はありますか? ありがとう。

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

sas - ミリ秒単位の SAS 日付入力形式

次の日付形式の SAS 入力形式を作成しようとしています。

「yyyy-mm-dd hh:ii:ss.SSS UTC」、例: 「2016-01-14 10:31:01.456 UTC」

私は次のフォーマットコードを使用して近づいてきました:

残念ながら、これをINFORMATとして使用しようとすると、「フォーマットMyDateが見つかりません」というエラーが表示されます。これは、入力フォーマットとして定義されておらず、単なる出力フォーマットであるためです。

この形式から作成されたデータセットから入力形式を作成しようとすることはできますが、ミリ秒の制約により、ミリ秒セクションで .000 の時間にマップされる値のみが作成されます。例えば:

ミリ秒単位でデータセットを列挙できたとしても、非常に大きくなります。私の日付は何年にもわたる可能性があるためです。

入力データを入力形式に渡す前に切り捨てることはできますか? ミリ秒や UTC 修飾子は気にしません。入力データを変更できません。

編集: 入力形式anydtdtm.として使用すると、エラー メッセージのない空の値になります。この入力形式を使用するデータ ステップは次のとおりです。

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

function - DATETIME18 を使用して、既存の変数から月番号を持つ変数を作成します。SAS の入力形式

私は非常に単純なことをしようとしていますが、惨めに失敗しています。

SAS クエリ ビルダーを使用して、既存の日付変数に基づいて、月番号を持つ新しい変数を作成したいと考えています。

変更したい変数の例は次のとおりです: 07/01/2015 00:00

そのため、番号1を含む新しい変数を作成したいと思います。

私の既存の変数には、DATETIME18 という入力形式があります。

だから私は次のことを試しました:

上記の両方で新しい変数が作成されますが、すべてのフィールドが空です。

そこで、変数の入力形式を変更して時間要素を削除し、月関数を使用することを考えたので、試しました:

しかし、次のエラーが発生します: エラー: 関数 MDY には、引数 2 として数値式が必要です。エラー: 関数 MDY には、引数 3 として数値式が必要です。

何か案は?基本的に、変数にDATETIME18がある場合、変数から月番号を引き出したいと思います。通知します。

前もってありがとうポール

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

sas - SASのフォーマットと長さの違い

「フォーマット」、「インフォーマット」、「長さ」の違いがわかりません。

0 投票する
0 に答える
148 参照

sas - 今回は hh:mm:ss PM または SaS の AM を読み取る Informat はどれですか?

好きなExcelから列を読むことができません

Windows 10 TimeZone +2 上の SAS Base 9.4 で