1

.csvファイルに180か国で構成されるパネルデータがあり、180か国のサブセットを作成して、サブセットに基づいて回帰を実行したいと思います。

これが私のデータセットのスクリーンショットです:http://i.imgur.com/e3s3XVn.png

サブセット関数をいじっていますが、正しく機能しないようです。

最終的には、他の列を同じに保ちながら、たとえば「アルバニア」、「米国」だけを含むサブセットを作成するにはどうすればよいですか。

提案ありがとうございます。

4

2 に答える 2

7

これは非常に基本的なサブセットであり、SOおよび入門マニュアルでいくつかの回答を見つけることができます。

csvファイルを「df」という名前のオブジェクトとして読み込んだとすると、次のような処理が実行されます。

df[df$country %in% c("United States", "Albania"), ]

将来:

  1. データのスクリーンショットはほとんど役に立ちません。dput(head(yourdata))代わりに次のようなものを使用してください。
  2. あなたが試したことを示してください。「サブセット関数をいじっています」と単純に書かないでください。特にこの機能を使いたいsubsetがうまくいかなかった場合は、他の人がトラブルシューティングするのを助けるためにあなたが何をしたかを示すことが役に立ちます。

最小限の例

サンプルデータ:

set.seed(1)
df <- data.frame(country = sample(letters[1:5], 15, replace = TRUE),
                 somerandomvalue = rnorm(15),
                 anotherrandomvalue = rnorm(15))

「国」列に関するいくつかの要約データ。5つの固有の国があり、全体で15のケース(行)があることを示しています。

> summary(df$country)
a b c d e 
2 5 1 4 3 

サブセットだけを取る:

> df[df$country %in% c("a", "b"), ]
   country somerandomvalue anotherrandomvalue
1        b    -0.005767173         0.80418951
2        b     2.404653389        -0.05710677
5        b    -1.147657009        -0.69095384
10       a    -0.891921127        -0.43331032
11       b     0.435683299        -0.64947165
12       a    -1.237538422         0.72675075
14       b     0.377395646         0.99216037

または、サブセット関数を使用します。

subset(df, country %in% c("a", "b"))
于 2013-03-11T17:09:13.527 に答える
2

subset関数を使ってみてください

   subset(YourData, country=c('Albania', 'United States'))

詳細については、を参照?subsetしてください。

例:(@RomanLuštrikとAnandaのコメントに感謝します)

> Data <- data.frame(Country=rep(letters[1:6], each=3), random=rnorm(18))
    > subset(Data, Country %in% c('a','b'))
  Country      random
1       a -1.02159357
2       a -0.88256998
3       a -0.24138579
4       b  0.35844584
5       b  0.05288194
6       b -1.09724481
> subset(Data, Country == "a" | Country == "b")
  Country      random
1       a -1.02159357
2       a -0.88256998
3       a -0.24138579
4       b  0.35844584
5       b  0.05288194
6       b -1.09724481

ここでは、質問を説明するための再現可能な優れた例を作成する方法を学習します。

于 2013-03-11T17:10:13.150 に答える