# Array deletion

**URL:** <https://www.ruby-forum.com/t/array-deletion/154619>\
**Category:** Ruby\
**Created:** [December 2, 2008, 7:30am UTC](https://www.ruby-forum.com/t/array-deletion/154619 "2008-12-02T07:30:40Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![jazzezravi](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/71e660/32.png) [@jazzezravi](https://www.ruby-forum.com/u/jazzezravi)\
**Post date:** [December 2, 2008, 7:30am UTC](https://www.ruby-forum.com/t/array-deletion/154619/1 "2008-12-02T07:30:40Z")

</div>

Hi All,

have an array like,

a=[“one”,“xcxc”,“two”,“dadasd”,“three”,“hgfhgfh”]

I want to delete the index of a[1],a[3] and so on…

Thanks in advance,  
P.Raveendran

> **[Raveendran](https://raveendran.wordpress.com)**
>
> Nothing is impossible...

---

<div class="post-metadata">

**Author:** ![jazzezravi](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/71e660/32.png) [@jazzezravi](https://www.ruby-forum.com/u/jazzezravi)\
**Post date:** [December 2, 2008, 8:35am UTC](https://www.ruby-forum.com/t/array-deletion/154619/2 "2008-12-02T08:35:38Z")

</div>

On 02.12.2008 07:25, jazzez ravi wrote:

> Hi All,
> 
> have an array like,
> 
> a=[“one”,“xcxc”,“two”,“dadasd”,“three”,“hgfhgfh”]
> 
> I want to delete the index of a[1],a[3] and so on…

Use delete\_at - and read the documentation. 🙂

robert

---

<div class="post-metadata">

**Author:** ![jazzezravi](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/71e660/32.png) [@jazzezravi](https://www.ruby-forum.com/u/jazzezravi)\
**Post date:** [December 2, 2008, 9:37am UTC](https://www.ruby-forum.com/t/array-deletion/154619/3 "2008-12-02T09:37:40Z")

</div>

jazzez ravi wrote:

> Hi All,
> 
> have an array like,
> 
> a=[“one”,“xcxc”,“two”,“dadasd”,“three”,“hgfhgfh”]
> 
> I want to delete the index of a[1],a[3] and so on…
> 
> Thanks in advance,  
> P.Raveendran  
> [http://raveendran.wordpress.com](http://raveendran.wordpress.com)

array.delete\_at(index). use this to delete particular indexes in an  
array.

---

<div class="post-metadata">

**Author:** ![jazzezravi](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/71e660/32.png) [@jazzezravi](https://www.ruby-forum.com/u/jazzezravi)\
**Post date:** [December 2, 2008, 9:44am UTC](https://www.ruby-forum.com/t/array-deletion/154619/4 "2008-12-02T09:44:23Z")

</div>

Hi Vamsi and Robert,

delete\_at(index) is useful when need to delete one data. But i want to  
delete series like 1,3,5,7. Currently i am using loop for it. Any other  
good code for it.

I tried Array.delete\_at(1,3,7,9) → Like this

Thanks,  
P.Raveendran  
[http://raveendran.wordpress.com](http://raveendran.wordpress.com)

---

<div class="post-metadata">

**Author:** ![jazzezravi](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/71e660/32.png) [@jazzezravi](https://www.ruby-forum.com/u/jazzezravi)\
**Post date:** [December 2, 2008, 10:01am UTC](https://www.ruby-forum.com/t/array-deletion/154619/5 "2008-12-02T10:01:23Z")

</div>

Hi Park,

Thanks for your code. I will catch u soon with another issue

Thanks all,

P.Raveendran  
[http://raveendran.wordpress.com](http://raveendran.wordpress.com)

---

<div class="post-metadata">

**Author:** ![jazzezravi](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/71e660/32.png) [@jazzezravi](https://www.ruby-forum.com/u/jazzezravi)\
**Post date:** [December 2, 2008, 9:53am UTC](https://www.ruby-forum.com/t/array-deletion/154619/6 "2008-12-02T09:53:34Z")

</div>

2008/12/2 jazzez ravi [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid):

> Hi Vamsi and Robert,
> 
> delete\_at(index) is useful when need to delete one data. But i want to  
> delete series like 1,3,5,7. Currently i am using loop for it. Any other  
> good code for it.
> 
> I tried Array.delete\_at(1,3,7,9) → Like this

If there is no duplicate data, you can use values\_at like this

a = a - a.values\_at(1,3,5,7)

Regards,

Park H.

---

<div class="post-metadata">

**Author:** ![jazzezravi](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/71e660/32.png) [@jazzezravi](https://www.ruby-forum.com/u/jazzezravi)\
**Post date:** [December 2, 2008, 10:27am UTC](https://www.ruby-forum.com/t/array-deletion/154619/7 "2008-12-02T10:27:01Z")

</div>

2008/12/2 Heesob P. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid):

> If there is no duplicate data, you can use values\_at like this  
> (…)

Or apply Array#- to the indexes. This works with duplicate data, too:

a.values\_at(\*((0…a.size).to\_a - [1, 3, 5, 7]))

Regards,  
Pit
