[ 
https://issues.apache.org/jira/browse/SPARK-16961?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nicholas updated SPARK-16961:
-----------------------------
    Description: 
The Utils.randomizeInPlace method, which is meant to uniformly shuffle the 
elements on an input array, never shuffles elements to their starting position. 
That is, every permutation of the input array is equally likely to be returned, 
except for any permutation in which any element is in the same position where 
it began. These permutations are never output.
This is because line 827 of Utils.scala should be
{{val j = rand.nextInt(i + 1)}}
instead of
{{val j = rand.nextInt( i )}}

  was:
The Utils.randomizeInPlace method, which is meant to uniformly shuffle the 
elements on an input array, never shuffles elements to their starting position. 
That is, every permutation of the input array is equally likely to be returned, 
except for any permutation in which any element is in the same position where 
it began. These permutations are never output.
This is because line 827 of Utils.scala should be
{{val j = rand.nextInt(i + 1)}}
instead of
{{val j = rand.nextInt(i)}}


> Utils.randomizeInPlace does not shuffle arrays uniformly
> --------------------------------------------------------
>
>                 Key: SPARK-16961
>                 URL: https://issues.apache.org/jira/browse/SPARK-16961
>             Project: Spark
>          Issue Type: Bug
>          Components: Spark Core
>    Affects Versions: 2.0.0
>            Reporter: Nicholas
>            Priority: Minor
>   Original Estimate: 0h
>  Remaining Estimate: 0h
>
> The Utils.randomizeInPlace method, which is meant to uniformly shuffle the 
> elements on an input array, never shuffles elements to their starting 
> position. That is, every permutation of the input array is equally likely to 
> be returned, except for any permutation in which any element is in the same 
> position where it began. These permutations are never output.
> This is because line 827 of Utils.scala should be
> {{val j = rand.nextInt(i + 1)}}
> instead of
> {{val j = rand.nextInt( i )}}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@spark.apache.org
For additional commands, e-mail: issues-h...@spark.apache.org

Reply via email to