直線上に配置

集計

◎取り出す


Q62 大量のデータから任意の数をランダム抽出する

5000件くらいのデータの中からランダムに100件のデータを抽出する方法を教えてください。

作業列にRAND関数を用いることで、抽出の基準を作り並び替えで抽出します。

 A2:A5001 に 5000 件のデータがあるとします。

 


A列に作業列として作りA2に =RAND() を入力し、A3:A5001 にコピーします。
 (5000件あるので、小数点以下4桁まで表示させます。)

(注)
ここでは無作為抽出を行っています。二段階抽出などを行う場合は、RAND関数を入力する前に、カテゴリー別(地域、性別、年代とか)に区分けしたデータをそれぞれ用意して、それぞれに無作為抽出と同じような事を行って下さい。


計算が手動になっている場合は、再計算させて乱数を発生させて下さい。

これで準備ができました。次の手順に従って100件のデータを抽出します。
 (1) 全データを選択し、メニューバーの[データ(D)]→[並び替え(S)]を選択し、
  「最
優先されるキー」に[乱数]を指定し[昇順(A)]にチェックを入れ
   OKをクリ
ックします。

元のデータを消去してよい場合は(2)へ、残しておきたい場合は(3)へ進んで下さい。

 (2) 行102以降を消し去ります。消去するにはセルA102をクリックし「Ctrl」
   キーを押したまま「→」(右矢印キー)を押し、続けて「↓」(下矢印キー)を
   押すと行102以降全てが選択されるので「編集(E)」→「クリアー(A)」→
     「すべて(A)」をクリックします。
 
 (3) 100行目までをコピーして別のシートに貼り付けます。


 発生させた乱数の大きいものから上位100件のデータが抽出されています。
乱数は発生(計算)させるごとに値が変わりますので、100件のランダム抽出を行ったことになります。

注)
並べ替えを行っても乱数は都度発生していますので、昇順に指定しても表示された乱数は昇順に並んでいません。

直線上に配置


     目次へ   次のページへ