Dear Arup,

Look at http://ruby-doc.org/stdlib-2.1.0/libdoc/csv/rdoc/CSV/Table.html#method-i-5B-5D

"Columns are returned as an Array of values. Altering that Array has
no effect on the table."

headers.each do |col_name|
  p csv_table[col_name].class  # Add this line
  csv_table[col_name] = hash[col_name]
end

And you will see:
Array
Array
Array

Abinoam Jr.

On Sun, Feb 23, 2014 at 4:14 PM, Arup Rakshit <lists / ruby-forum.com> wrote:
> I have fixed the error. But csv_table not showing any data .
>
> require 'csv'
>
> _output_file_path =
> File.expand_path('output.csv',File.dirname(__FILE__))
>
> hash = {   'A' => [ 'v', 'x', 'y' , 'z' ] ,
>            'B' => [ 'm', 'n' , 'o' ] ,
>            'C' => [ 'i', 'j' , 'k' , 'l', 'm', 'n' , 'o' ]
>        }
>
> headers = hash.keys
> csv_row = CSV::Row.new(headers,[],true)
> csv_table = CSV::Table.new([csv_row])
> csv_table.delete(1)
> headers.each do |col_name|
>   csv_table[col_name] = hash[col_name]
> end
> csv_table.to_csv
> # => "A,B,C\n"
>
> What wrong I did here ?
>
> --
> Posted via http://www.ruby-forum.com/.