- 締切済み
データに条件付をつけてまんべんなくばらばらにグループ分けする方法
こんばんは いつもお世話になります 沢山の項目があるデータを内容にかたよりがなくばらばらになるように数枝にグループ分けする方法を教えてください。 まんべんなくランダムに、と言ったらいいでしょうか・・・。 例えば、日本全国からの個人データ(氏名・都道府県名・年齢・性別・職業・・・)があったとし これを「都道府県名・年齢・性別・職業・・・」がまんべんなくランダムに 3組に、 そして、それぞれ5から6人くらいのグループに分ける それぞれの組・グループの「都道府県名・年齢・性別・職業・・・」がまんべんなくばらばらになるように分けたいのです。 ランド関数だと、どうしてもかたよってしまい あるクラスは男女の比が6:4なのに、あるクラスは3:7とか・・・ 手直しすると、逆に他の項目でかたよりが・・・ときりがありません エクセルは中級・アクセスは初級程度ですが 多少原始的な方法があってもとりあえずいいので (時間がないので) なにかアドバイスよろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- KenKen_SP
- ベストアンサー率62% (785/1258)
例えば、 都道府県×10000 + 性別×1000 + 年齢×100 + 職業×10・・・ とでも属性を数値化するスコアの付けルールを設けます。重要な 項目ほど係数を多くとります。 都道府県などは東京なら 1、大阪なら 2 のようなテーブルを別途 用意しておき、VLOOKUP 関数などで参照した結果に係数を乗じれば 良いでしょう。職業など他要素についても同じです。 また、係数自体もどこかのセルを参照する数式にしておけば、重視 する要素の順も後から容易に変更できそうですね。 このようなルールを設けることで、職業や住所などの各個人の属性 が数値化できそうです。 こうして付けられたスコアが近い人同士は、「属性が近い」と言え ると思うのです。 あとは、スコアの上位から順に各グループに振っていくとか、さらに 別の方法も組み合わせてシャッフルしてから各グループに振るか。。 具体的な方法までは言及しませんが、属性スコアの近い人を別グループ になるよう何らかの方法で割り振っていけば良いかと。 数学的な根拠は私には思いつきません。気のせいかもしれませんが、 単純に乱数を使う方法よりはご希望に近いかもしれません。 少しは参考になるでしょうか?
- Cupper
- ベストアンサー率32% (2123/6444)
>ランド関数だと、どうしてもかたよってしまい >あるクラスは男女の比が6:4なのに、あるクラスは3:7とか・・・ ランダムにするのであれば、これで正解なのではありませんか。 男女比を5:5にしたいのであれば、男女別にシャッフルしましょう。
お礼
先日は回答ありがとうございました お礼が遅くなり失礼しました 結局、何度か条件を入れて並べ替えをし、 そして、グループの数が5グループなら1から5の数を順にふりグループ分けしました。 偏ってしまったところは結局手作業で直しをいれるやり方になりました ランダムという言葉を使ったのは間違いでした わかりにくくてすみませんでした また、よろしくお願いします。
補足
回答ありがとうございます 男女別だけなら2通りしかないのでできるのですが 都道府県(49通り?)、年齢(子どもからお年寄りまで)・・・いろいろあるので困っています それぞれまんべんなく3クラス分×6人のグループ に分けたいのです。 説明がへたくそでわかりにくくてすみません
お礼
先日は回答ありがとうございました お礼が遅くなり失礼しました 結局、何度か条件を入れて並べ替えをし、 そして、グループの数が5グループなら1から5の数を順にふりグループ分けしました。 偏ってしまったところは結局手作業で直しをいれるやり方になりました ランダムという言葉を使ったのは間違いでした わかりにくくてすみませんでした また、よろしくお願いします。
補足
回答ありがとうございます 「テーブル」とありますが、アクセスで作る形になるのでしょうか 私にはちょっと難しいのですが、参考にして踏ん張ってみます