From: Phrogz Date: 2009-06-17T09:50:07+09:00 Subject: Re: Extracting and inserting a "column" from/into an array On Jun 16, 9:34 am, Chauk-Mean Proum wrote: > Hi, > > For image processing, I have to do the following operations : > > 1/ I have an array and I want to extract every 4 element into another > array : > > # r=red, g=green, b=blue, a=alpha > img_data = [ "r1", "g1", "b1", "a1", "r2, "g2", "b2", "a2" ] > > => [ "a1", "a2" ]  # the array of every four elements i.e. alpha data > > It's like extracting the fourth column of a matrix of n rows and 4 > columns. > > 2/ Conversely, I have an array and I need to add elements at every 3 > elements > > img_data = [ "r1", "g1", "b1", "r2, "g2", "b2" ] > alpha_data = [ "a1", "a2" ] # the elements to add > > => [ "r1", "g1", "b1", "a1", "r2, "g2", "b2", "a2" ] > > It's like inserting a column to a matrix of n rows and 3 columns. > > I'm wondering if there is an easy or seamless way to do these > operations. Possibly not as efficient, but if you were representing the data as a '2D' array (array of arrays) alternatively you could .transpose the array, insert a row, and .transpose it back.