問題タブ [stata-macros]

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

stata - マクロへの値の範囲の割り当て

forループを使用して変数のリストの名前を変更しようとしています。

私のコードは次のようになります。

k手動で書かずにマクロに範囲を割り当てることができるかどうか疑問に思っていました。2 つの値の間のデルタは 1 ではないことに注意してください。

0 投票する
4 に答える
2846 参照

r - スタブ名のローカル マクロ リストに対する Stata の for ループに相当する R

私は R に移行しようとしている Stata ユーザーですが、どうしてもやめられない Stata の松葉杖が 1 つあります。これは、R の「適用」関数で同等のことを行う方法がわからないためです。

Stata では、スタブ名のローカル マクロ リストを生成し、そのリストをループして、それらのスタブ名から名前が作成された変数を呼び出すことがよくあります。

簡単な例として、次のデータセットがあるとします。

2 つの新しい変数を生成したいと思います。これらの変数は、年が 6 の場合はそれぞれ、年が 7 の場合はそれぞれ、年が 8 の場合はvarXvarYの値をとりvarX06ます。varY06varX07varY07varX08varY08

最終的なデータセットは次のようになります。

melt明確にするために、コマンドでこれを実行できることを知っていreshapeます-基本的にこのデータをワイドフォーマットからロングフォーマットに変換しますが、それに頼りたくありません。それは私の質問の意図ではありません。

私の質問は、R でスタブ名のローカル マクロ リストをループする方法についてです。この単純な例を使用して、より一般的なジレンマを説明しています。

Stata では、スタブ名のローカル マクロ リストを生成できます。

そして、マクロ リストをループします。varX年が 6 の場合、新しい変数orを生成し、varY新しい変数値を(それぞれ) varX06orの値に置き換えることができます。varY06

最後のセクションは、R で複製するのが最も難しいと思われるセクションです'x'06。私が . さらに、 を記述する'i'と、Stata は文字列 "'i'" ではなく文字列 "varX" を返します。

Rでこれらのことを行うにはどうすればよいですか?

Muenchen の「R for Stata Users」を検索し、ウェブをグーグルで検索し、ここ StackOverflow で以前の投稿を検索しましたが、R ソリューションを見つけることができませんでした。

この質問が初歩的な場合は申し訳ありません。以前に回答されている場合は、その回答に誘導してください。

前もってありがとう、
タラ

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

types - ローカル マクロに格納されている値を文字列から数値に変更するにはどうすればよいですか?

"$S_DATE"マクロに格納された年に応じて、年がずれている変数を生成したいと考えています。年を次の名前のマクロに保存しましたdate

そして、次のように新しい変数を生成したい:

ここy_passedで、1 から 10 までの整数を含む変数です。

しかし、私は得る:

保存されたマクロが文字列であるため、これが発生することはわかっています。

ローカル マクロに格納されている値を文字列から数値に変更するにはどうすればよいですか?

0 投票する
5 に答える
345 参照

subset - データのサブセットを一連の整数に置き換える

次のようなデータセットがあります。

欠損値に対応する一連の整数を入力したいと思いますid

forvalues最初は、次のようにループを使用することを考えました。

しかし、それは(明らかな理由で)1最初の反復中にすべての欠損値を置き換えるだけです。

次に、行のインデックス付けによってループをデータのサブセットに制限することを考えました (R のように) が、この機能は Stata(?) には存在しないようです:

この一見単純なタスクを Stata で実行するにはどうすればよいでしょうか?

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

foreach - グループによる分析と印刷用の変数からの値の抽出

私は少しグループごとの処理を行っており、学校ごとにいくつかの回帰を実行しています。

私がやりたいのは、出力をいくらかカスタマイズして、どの出力がどの学校に属しているかを確認できるようにすることです。foreachしかし、私はそれを機能させるような方法でまたはを処理できないようですforvalues。私は と のさまざまな反復を試みましたがforeachforvaluesある程度の成功を収めました。

私が今やろうとしているのは、 の値を行schoolnameに表示することdiですが、成功していません。

以下に、ダミーのデータとコードをいくつか示します。

注: この質問は、 Statalistにもクロス投稿されています。