# Breaking a list into chunks of size N

**URL:** <https://discourse.julialang.org/t/breaking-a-list-into-chunks-of-size-n/32697>\
**Category:** General Usage\
**Tags:** array\
**Created:** [December 25, 2019, 5:26pm UTC](https://discourse.julialang.org/t/breaking-a-list-into-chunks-of-size-n/32697 "2019-12-25T17:26:03Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![PseudoCodeNerd](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/pseudocodenerd/32/11948_2.png) [@PseudoCodeNerd](https://discourse.julialang.org/u/PseudoCodeNerd)\
**Post date:** [December 25, 2019, 5:26pm UTC](https://discourse.julialang.org/t/breaking-a-list-into-chunks-of-size-n/32697/1 "2019-12-25T17:26:03Z")

</div>

Hello there !  
I’m trying to break a list into chunks of size N .  
Here’s the code which I’ve written

```julia
julia> function chunk(arr,n)
       [arr[i * n:(i + 1) * n] for i in [(length(arr)+n-1)//n]]
       end

```

Can someone make it work !  
Here’s what it’s intended to do.

```julia

my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9] 
n = 4 //break at 4
Output: [[1, 2, 3, 4], [5, 6, 7, 8], [9]]

```

---

<div class="post-metadata">

**Author:** ![lbilli](https://avatars.discourse-cdn.com/v4/letter/l/59ef9b/32.png) [@lbilli](https://discourse.julialang.org/u/lbilli)\
**Post date:** [December 25, 2019, 5:39pm UTC](https://discourse.julialang.org/t/breaking-a-list-into-chunks-of-size-n/32697/2 "2019-12-25T17:39:04Z")

</div>

Check out [`Iterators.partition(arr, n)`](https://docs.julialang.org/en/v1/base/iterators/#Base.Iterators.partition).

---

<div class="post-metadata">

**Author:** ![GunnarFarneback](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/gunnarfarneback/32/1827_2.png) [@GunnarFarneback](https://discourse.julialang.org/u/GunnarFarneback)\
**Post date:** [December 25, 2019, 6:05pm UTC](https://discourse.julialang.org/t/breaking-a-list-into-chunks-of-size-n/32697/3 "2019-12-25T18:05:38Z")

</div>

Here’s one way to do it.

```julia
chunk(arr, n) = [arr[i:min(i + n - 1, end)] for i in 1:n:length(arr)]

```
