本文へスキップ
Case Converter Online
ja

ランダム選択ツール(リスト抽選)

選択肢を1行に1つずつ貼り付ければ、ツールが代わりに選びます。当選者を1人選ぶことも、重複なしで複数を選ぶことも、リスト全体をシャッフルすることもできます。

カンマで区切って1行に並べることもできます。

オプション

結果

最近の結果

  1. 直近10件の結果がここに表示されます。ページを離れるまでの間だけ保持されます。

ランダム選択ツールでできること

指定したリストから、1つまたは複数の項目を、どれも同じ確率で選びます。くじ引きの当選者、最初に発表する人、食事に行くお店、順番決め、問題集から出す問題などを決めるのに使えます。リスト全体をランダムな順番にシャッフルすることもできます。

リストがお使いの端末の外に出ることはありません。抽選はブラウザの中で行われ、ページを閉じた後に何かが保存されることもありません。

名前や選択肢は日本語のままで問題ありません。社内の抽選会、席替え、当番決め、グループ分けなど、日本語のリストをそのまま貼り付けて使えます。

使い方

  1. 「選択肢(1行に1つ)」欄に項目を入力するか貼り付けます。Red, Green, Blue のように、1行をカンマで区切った形でも使えます。
  2. 「選ぶ数」を設定します。当選者が1人なら1のままにします。
  3. 同じ項目を2回選びたくない場合は、「重複なし」をオンのままにします。オフにすると、ボールを引いて袋に戻すような復元抽出になります。
  4. 「結果の区切り」を選びます。初期設定は改行です。
  5. 「ランダムに選ぶ」を押します。すべての選択肢をランダムな順番に並べたい場合は、「リストをシャッフル」を押します。

1つだけ選んだ場合は、「結果」の下に大きく表示されます。複数選んだ場合は一覧で表示されます。「コピー」を押すとコピーできます。直近10回分の抽選は、それぞれの時刻とともに「最近の結果」に一覧表示されます。前の抽選結果を見せてほしいと言われたときに役立ちます。「クリア」を押すと一覧が空になります。一覧は、ページを離れるまでの間だけ保持されます。

空の行や各項目の前後にある余分なスペースは無視されるので、表計算ソフトの列からそのまま貼り付けられます。

抽選例

以下は、このページを動かしているコードの実際の出力です。実行するたびに結果は変わります。

リスト 設定 実行結果の一例
Pizza, Sushi, Tacos, Curry, Burgers, Salad 1つ選ぶ Sushi
同じリスト 3つ選ぶ、重複なし Burgers, Sushi, Curry
Ana, Ben, Chloe, Dev 2つ選ぶ、重複なし Ben, Chloe
Pizza, Sushi, Tacos, Curry, Burgers, Salad リストをシャッフル Sushi, Curry, Burgers, Tacos, Pizza, Salad
Heads, Tails 5つ選ぶ、重複なしをオフ Heads, Tails, Tails, Tails, Tails
Yes, No 1つ選ぶ Yes

コイン投げ(Heads は表、Tails は裏)の行は、ランダムな結果がどう見えるかを思い出させてくれます。裏が4回続くと怪しく感じますが、公平な抽選でもこの程度の短い連続はよくあることです。

仕組み

各行がリストの1つのエントリーになります。1つ選ぶために、ツールは0からリストの最後の位置までのランダムな整数を引き、その位置のエントリーを返します。

乱数は、ブラウザに組み込まれた安全な乱数源 crypto.getRandomValues から取得します。生のランダムなビットを、どのエントリーも有利にならないように位置へ変換するため、ツールは棄却サンプリングを使います。単純に余りを計算すると、リストの長さで乱数の範囲がちょうど割り切れない場合に、一部の位置がわずかに選ばれやすくなります。棄却サンプリングはその偏りを生む少数の値を捨てて引き直すので、すべてのエントリーがまったく同じ確率になります。

「重複なし」がオンの場合、ツールはリストのコピーにフィッシャー・イェーツ法のシャッフルをかけ、先頭から項目を取り出します。帽子から名前を戻さずに引くのと同じです。「リストをシャッフル」は、シャッフルしたリスト全体を返します。

活用アイデア

  • プレゼント企画。 応募者の名前を貼り付けて当選者を1人選び、さらに補欠を2人選びます。
  • 教室で。 次に答える人を選んだり、クラス名簿をシャッフルして発表の順番を決めたりします。
  • チーム分け。 リストをシャッフルし、前半と後半に分けます。
  • 迷ったときの決定。 決めかねている選択肢を貼り付けて、ツールに選ばせます。結果を見てがっかりしたなら、本当はどちらが良かったのかがわかります。
  • 勉強。 テーマや単語カードの問題の一覧を貼り付け、復習するものを3つ選びます。

ヒントと制限

  • 重複は2回分として数えられます。 各行が1つのエントリーなので、繰り返し出てくる名前は選ばれやすくなります。それを望まない場合は、先にリストを整理してください。
  • 項目の中のカンマ。 項目にカンマが含まれる場合は、別々の行に分けてください。カンマで区切られるのは、リスト全体が1行にあるときだけです。区切りとして扱われるのは半角のカンマ(,)だけで、日本語の読点「、」や全角カンマでは分かれないので、日本語のリストは1行に1つずつ入力してください。
  • リストより多く選ぶ場合。 「重複なし」がオンのときに6つの選択肢から10個を指定すると、6つすべてがランダムな順番で返され、6つしか選べなかったことがステータス行に表示されます。
  • 記録を残しましょう。 公開の抽選会では、結果をコピーして「最近の結果」の時刻を控えるか、ボタンを押すところを画面録画しておきましょう。
  • 1回の操作で最大1,000件まで選べます。

そのほかのランダムな選び方

Excel や Google スプレッドシート。 A2:A20 に名前がある場合、=INDEX(A2:A20, RANDBETWEEN(1, ROWS(A2:A20))) で1人を選べます。最新の Excel では、=SORTBY(A2:A20, RANDARRAY(ROWS(A2:A20))) でリストをシャッフルできます。

Python。 random.choice(names) で1つ、random.sample(names, 3) で重複なしに3つ選べます。random.shuffle(names) はリストそのものをシャッフルします。予測できない必要がある場合は secrets.choice(names) を使ってください。

コマンドライン。 Linux では、shuf -n 1 names.txt でファイルからランダムな1行を表示できます。

関連ツール

項目ではなく数字を選ぶには、乱数生成ツールを使ってください。言葉遊びの頭文字を決めるなど、ランダムなアルファベットが必要なら、ランダムアルファベット生成ツールを試してください。ゲームや予定のために月を選ぶなら、ランダム月生成ツールを使ってください。

ランダム選択のよくある質問

リストから名前をランダムに1つ選ぶには?

「選択肢(1行に1つ)」欄に名前を1行に1つずつ貼り付け、「選ぶ数」を1のままにして、「ランダムに選ぶ」を押してください。選ばれた名前が「結果」の下に大きく表示されます。

重複なしで複数の選択肢を選べますか?

はい。「重複なし」は初期設定でオンになっているので、各選択肢は1回しか選ばれません。「選ぶ数」を必要な当選者の数に設定してください。リストの数より多く指定した場合は、すべての選択肢がランダムな順番で1回ずつ出ます。

同じ名前を2回入力すると、確率は2倍になりますか?

はい。各行がそれぞれ1つのエントリーとして数えられるので、2回出てくる名前は2倍選ばれやすくなります。全員を同じ確率にしたい場合は先に重複を取り除いてください。わざと残して当選のチャンスを増やすこともできます。

抽選は公平ですか?

はい。ブラウザの暗号論的な乱数源と偏りのない棄却サンプリングを使っているので、どの行も同じ確率です。リストの並び順やボタンを押すタイミングで確率が変わることはありません。