• ベストアンサー

無作為抽出(重複は除く)を行うには

3歳から5歳までの中で無作為に50人、6歳から8歳までの中で同じように50人、合わせて100人抽出したいのです。ただ、同じ世帯で2人以上重なってはいけません。どうすればよいでしょうか。個人に対しての番号、世帯に対しての番号はそれぞれあるものとします。

質問者が選んだベストアンサー

  • ベストアンサー
  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.2

余りにも漠然としすぎているので、私がExcelでやるとしたらという前提で答えます。 3~8歳のデータを1つの表にします。 B列に世帯番号、C列に個人番号、D列に年齢 が入っていて、各1行目は列のタイトルが入っているとします。 データをばらばらに並べたいので、A1に「RAND」とタイトルを入れ、A2以下に =RAND() と入れてやり、A:D列を[データ]-「並べ替え]で、「最優先されるキー」:RANDで並べ替えます。これで並びがランダムになりました。 次に重複を除いた世帯番号を作ります。仮にH列に抽出するとします。 [データ]-[フィルタ]-[フィルタオプションの設定]で、抽出先:指定した範囲、リスト範囲:B列、検索条件範囲:B列、抽出範囲:H1、「重複するレコードは無視する」にチェック。 これで、H列に重複の無いランダムな並びの世帯番号が出来ます。 次に、世帯の重複が無い個人番号と年齢のデータを作ります。 I2に=VLOOKUP(H2,B:C,2,FALSE) と入れ、下までコピー J2に=VLOOKUP(H2,B:D,3,FALSE) と入れ、下までコピー I1,J1には「個人番号」「年齢」とタイトルをつけます。 最後にH:J列でオートフィルタを掛け、「年齢」のオプションで5以下を表示させ、上から50名分をコピーして別シートに貼り付け(3~5歳のリスト)。同様に6以上を表示させ上から50名分を別シートに貼り付け(6~8歳のリスト)ます。 こんなところでしょうか。 各世帯から一人だけを選んだことでどちらかの集団が50名を割る場合などは考慮していません。

jyouhoukan
質問者

お礼

どうもありがとうございました。いろいろと忙しく返事が遅くなりまして申し訳ありませんでした。

その他の回答 (2)

  • higekuman
  • ベストアンサー率19% (195/979)
回答No.3

ご自分で何かを試してみて、うまくいかなかったから質問しているんですよね? 何をどう試して、どこがどううまくいかなくて困っているのかを提示したほうが、jyouhoukan様にとっても解りやすい適切な回答を得られると思いますよ。

jyouhoukan
質問者

お礼

どうもありがとうございました。いろいろと忙しく返事が遅くなりまして申し訳ありませんでした。

  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.1

3歳から5歳までを50人選びます。(世帯番号も記録します) 6歳から8歳までを選ぶ際に、世帯番号が重なっていないかチェックをしていき、 重なっていたら別の人を選びます。 そして50人選んだら終りです。 情報からですとこのような回答しかできませんでした。

jyouhoukan
質問者

お礼

どうもありがとうございました。いろいろと忙しく返事が遅くなりまして申し訳ありませんでした。

関連するQ&A