乱数ジェネレーターの環境を反映するツールは、シードと分布を使用するアルゴリズムを使用して一連の乱数を生み出します。
使用上の注意
- ランダム値を使用するツール (たとえば、[ランダム ラスターの作成 (Create Random Raster)]、[ランダム ポイントの作成 (Create Random Points)]、または [値の計算 (Calculate Value)]) を同じシード値で 2 回実行すると、同じ出力が得られます。シードを制御することにより、結果を再現することができます。
- 乱数ジェネレーターをグローバルに定義すると、ランダム値の 1 つのストリームが作成されます。ModelBuilder モデル内の以降の各ツールは、乱数が必要になると、このストリームから次の値を取得します。
- ModelBuilder モデルでは、乱数を使用するツールごとにストリームをローカルに作成することによって、複数の乱数ジェネレーター ストリームを使用できます。各ツールは、独自のストリームから必要に応じてランダム値を取得することができます。ローカル ストリームを持つツールだけが、そのストリームからランダム値を取得できます。ローカル ストリームの数に制限はありません。
レガシー:
arcgis.rand() は、ArcGIS Pro 2.0 以降サポートされなくなりました。arcgis.rand() 関数は、[値の計算 (Calculate Value)] および [フィールドの計算 (Calculate Field)] ツール、[乱数ジェネレーター] 環境設定、CreateRandomValueGenerator 関数を使用したランダム値の作成を中心に使われてきました。代わりに、Python の random モジュールを使用する、同等の関数を使用する必要があります。
ダイアログの構文
- [シード] - シードは、乱数ジェネレーターを開始するために使用する整数値です。デフォルト値は 0 です。
- [乱数ジェネレーターのタイプ] - 乱数ジェネレーターのアルゴリズム。
- [ACM599] - ACM 収集アルゴリズム 599。これがデフォルトです。
- [MERSENNE_TWISTER] - メルセンヌ ツイスタ mt19937。
- [STANDARD_C] - 標準 C Rand。
スクリプトの構文
arcpy.env.randomGenerator = random_generator_option
random_generator_option | 説明 |
---|---|
シード {分布} |
|
RandomNumberGenerator クラス | RandomNumberGenerator は、CreateRandomValueGenerator 関数を使用して作成するか、randomGenerator 環境から返すことができます。 |
スクリプトの例
import arcpy
# Set the random generator to ACM599 with random seed of 99
arcpy.env.randomGenerator = "99 ACM599"