>>> range ('x','z') "xyz" >>> range (LT,GT) [LT,EQ,GT]
>>> range 0 :: [Integer] [] >>> range 1 :: [Integer] [0] >>> range 8 :: [Integer] [0,1,2,3,4,5,6,7]
\(NonNegative n) -> length (range n :: [Integer]) == n
d = (maximum sample - minimum sample) / ((bins - 1) * 2)If all elements in the sample are the same and equal to x range is set to (x - |x|10, x + |x|10). And if x is equal to 0 range is set to (-1,1). This is needed to avoid creating histogram with zero bin size.
>>> import Data.Massiv.Array >>> range Seq (Ix1 1) 6 Array D Seq (Sz1 5) [ 1, 2, 3, 4, 5 ] >>> fromIx2 <$> range Seq (-1) (2 :. 2) Array D Seq (Sz (3 :. 3)) [ [ (-1,-1), (-1,0), (-1,1) ] , [ (0,-1), (0,0), (0,1) ] , [ (1,-1), (1,0), (1,1) ] ]
Just (1,12)
>>> pretty $ range [2,3] [[0,1,2], [3,4,5]]