Я пытаюсь превратить массив массивов в массив хешей. Может ли кто-нибудь попытаться объяснить, что я точно делаю неправильно здесь? Первый массив в массиве массивов становится ключом для хэша. Я могу заставить метод возвращать один хэш или даже три из тех же хэшей. Но я не могу заставить его возвращать каждый новый хэш в конечном массиве.не может определить массив хэшей ruby
table_data = [
["first_name", "last_name", "city", "state"],
["Elisabeth", "Gardenar", "Toledo", "OH"],
["Jamaal", "Du", "Sylvania", "OH"],
["Kathlyn", "Lavoie", "Maumee", "OH"]
]
def convert_table(table_array)
hash = {}
final_array = []
headers_array = table_array.shift
table_array.each_index do |x|
i = 0
until i == headers_array.length
hash[headers_array[i]] = table_array[x][i]
final_array << hash
i += 1
end
end
final_array
end
p convert_table(table_data)
#END GOAL
[ { "first_name" => "Elisabeth", "last_name" => "Gardenar", "city" => "Toledo", "state" => "OH" },
{ "first_name" => "Jamaal", "last_name" => "Du", "city" => "Sylvania", "state" => "OH" },
{ "first_name" => "Kathlyn", "last_name" => "Lavoie", "city" => "Maumee", "state" => "OH" }
Если вы говорите по-английски, пожалуйста, прочитайте следующий комментарий, который вы успешно пренебрегая навсегда: \t *** Я заметил, что вы никогда не принимаем ответы на ваши вопросы. Обязательно переходите к своим вопросам некоторое время и принимайте лучшие ответы, учитывая, что они решают ваш вопрос. Таким образом, вы даете сообществу понять, что проблема решена, и в то же время вы вознаграждаете усилия тех, кто предоставил решение. Чтобы принять ответ, найдите галочку под номером ответа. *** –
Никакой MCVE не предусмотрено, никаких вопросов. Downvoted. – mudasobwa
Я говорю по-английски. Я не знал, как работает этот сайт. Теперь я знаком, и я просматриваю свои вопросы и выбираю правильный ответ. Я вижу ценность и необходимость в этом. Не нужно ПРОТИВАТЬ и оскорблять. Если вы хотите быть ничтожным в отношении грамматики, я бы перефразировал «успешно игнорируя навсегда». «Успешно» присутствует напряженное время. Это самое дальнее, что вы можете нести свое заявление. «Навсегда» просто не работает. В следующий раз, когда вы спросите, говорит ли кто-нибудь по-английски, nix эту часть. Его жизненно важно, задавая этот вопрос, использовать совершенно понятный английский ... навсегда (хе-хе) –