Предположим, что у нас есть хэш,
hash_1 = {1=>{:rev=>400, :d_odr=>3}, 2=>{:rev=>4003, :d_price=>300}}
Вышеупомянутый hash_1 имеет ключи как некоторые id 1,2, ... и значения для них снова хеш с некоторыми ключами как (: rev,: d_odr ,: d_price). Предположим, что нам нужен CSV-файл с заголовками,
headers = ['Designer_id','Revenue','Discount_price','Impression','Designer ODR']
Затем создайте новый массив для каждого значения hash_1 и вставьте его в файл CSV,
CSV.open("design_performance_data_temp.csv", "w") do |csv|
csv << headers
csv_data = []
result.each do |design_data|
csv_data << design_data.first
csv_data << design_data.second[:rev] || 0
csv_data << design_data.second[:d_price] || 0
csv_data << design_data.second[:imp] || 0
csv_data << design_data.second[:d_odr] || 0
csv << csv_data
csv_data = []
end
end
Теперь у вас есть файл design_performance_data_temp.csv, сохраненный в соответствующем каталоге. Более высокий код может быть оптимизирован.