0
異なる確率で値をランダムに割り当てるUDFを作成したいとします。ランドによって返される値に依存し、以下の例で異なる確率に基づいてランダムに値を割り当てるUDF
:
- 0〜0.5の値は、(50%の確率)であるべきである
- 0.8〜1の値は、B(20%の確率であるべきです)
- 値はC(30%の確率)
val names = Array("A", "B", "C")
しかし、結果を印刷するとき、名前はUDFで定義されたルールに基づいて割り当てられません。
+---+----+----+
| id| val|name|
+---+----+----+
| 0|0.17| C| => should be A
| 1|0.12| A|
| 2|0.36| A|
| 3|0.56| B|
| 4|0.82| A|=> should be C