3

countryなどの国コードを含むという文字列ベクトルをループしたいと思います。AFGETH

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

levelsof country, local(xtry)
foreach x in local xtry:
 graph command here if xtry=="`x'"
 graph save mygraph

}

levelsof各グラフが作成される文字列である特定の国コードにデータを制限する「if」ステートメントと同様に、に相当するコマンドはありますか?

4

2 に答える 2

3

次のようなものを使用します。

for (cn in levels(country))
    {
    if (cn=="x")
       {
       <do something>
       }
    else
       {
       <do something else>
       }
    }

複数の国を確認したい場合は、使用できます

if (cn == "x" | cn == "y")

またはまた

if (cn %in% c("x", "y", "z"))
于 2013-02-19T06:55:21.180 に答える
0

余談ですが、関数の適用グループは、for ループの構築と同一ではないにしても、実際には似ています。問題は、関数の適用グループがそのようなループのラッパーであり、さまざまなデータ構造と要件に固有のものであることです。ループをしています。スピードブーストの主張がどれほど有効かはわかりません - 私は懐疑的です. それ以外は、あなたが求めていることを理解していれば(ステータスがわからない)、Rでデータをサブセット化し、サブセットごとにいくつかのプロットを実行する方が簡単かもしれません。

于 2013-02-19T10:29:12.567 に答える