R でのクラスター サンプリング: 例付き


研究者は多くの場合、母集団からサンプルを採取し、そのサンプルのデータを使用して母集団全体についての結論を導き出します。

一般的に使用されるサンプリング方法はクラスター サンプリングです。この方法では、母集団がクラスターに分割され、特定のクラスターのすべてのメンバーがサンプルに含められるように選択されます。

このチュートリアルでは、R でクラスター サンプリングを実行する方法について説明します。

例: R でのクラスター サンプリング

市内ツアーを提供する会社が顧客を調査したいとします。 1 日に提供する 10 件のツアーの中から 4 件をランダムに選択し、各顧客に体験を 1 から 10 のスケールで評価してもらいます。

次のコードは、R で操作する偽のデータ フレームを作成する方法を示しています。

 #make this example reproducible
set.seed(1)

#create data frame
df <- data.frame(tour = rep(1:10, each=20),
                 experience = rnorm(200, mean=7, sd=1))

#view first six rows of data frame
head(df)

  tour experience
1 1 6.373546
2 1 7.183643
3 1 6.164371
4 1 8.595281
5 1 7.329508
6 1 6.179532

次のコードは、4 つの訪問をランダムに選択し、それらの訪問の各メンバーをサンプルに含めることで顧客のサンプルを取得する方法を示しています。

 #randomly choose 4 tour groups out of the 10
clusters <- sample( unique (df$tour), size=4, replace= F )

#define sample as all members who belong to one of the 4 tour groups
cluster_sample <- df[df$tour %in% clusters, ]

#view how many customers came from each tour
table(cluster_sample$tour)

 2 7 8 10 
20 20 20 20 

結果から次のことがわかります。

  • サンプルには、観光客グループ #2 の 20 人の顧客が含まれていました。
  • サンプルにはツアー グループ #7 の 20 人の顧客が含まれていました。
  • ツアーグループ #8 の 20 人の顧客がサンプルに含まれていました。
  • サンプルにはツアー グループ #10 の 20 人の顧客が含まれていました。

したがって、このサンプルは 4 つの異なる観光グループの合計 80 人の顧客で構成されています。

関連: R で %in% 演算子を使用する方法

追加リソース

さまざまな種類のサンプリング方法を理解する
R での層別サンプリング
R での体系的なサンプリング

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です