Я пытался работать с получением одного столбца из файла CSV.
Я просмотрел документацию, http://www.ruby -doc.org / stdlib / libdoc / csv / rdoc / index.html
но до сих пор не понимаю, как его использовать.
Если я использую CSV.table
, отклик невероятно медленный по сравнению с CSV.read
. Я допускаю, что набор данных, который я загружаю, довольно большой, и именно поэтому я хочу получить из него только один столбец.
Мой запрос просто сейчас выглядит так
@dataTable = CSV.table('path_to_csv.csv')
и при отладке я получаю ответ
#<CSV::Table mode:col_or_row row_count:2104 >
В документации сказано, что я должен иметь возможность использовать by_col () , но когда я пытаюсь вывести
<%= debug @dataTable.by_col('col_name or index') %>
Это дает мне "неопределенный метод 'col' error"
Может кто-нибудь объяснить мне, как я должен использовать CSV? и если есть способ получить столбцы быстрее, используя «чтение» вместо «таблица»?
Я использую Ruby 1.92, который говорит, что он использует более быстрый CSV, поэтому мне не нужно использовать гем FasterCSV.