Johannes Friestad wrote: >I'm sure there are many ways to do it, here's one: > >a=[3,4,5,6] >b=%w{three four five six seven} >res={} >a.length.times {|i| break if i>=b.length; res[a[i]]=b[i]; } > >It handles the situation where either array is shorter than the other. > >jf > > > > I'm using... new_item = Hash.new Item.column_names.each { |column_name| new_item[column_name] = row.shift } at the moment and it's working, so I won't replace it with these suggestions zip was the method I knew about but couldn't remember :) Kev