WedX - журнал о программировании и компьютерных науках

Разделение строки из csv на строки в python

У меня есть CSV-файл, разделенный запятыми, и я хочу вывести все значения только из первой строки с префиксом «количество» значений, которые я вывожу. Мой вывод должен выглядеть так:

0 row1col1
1 row1col2
2 row1col3
...
n row1coln

Я не вижу, как разделить объект чтения, так как разделение на нем не работает.

Пока у меня есть:

import csv
reader_object = csv.reader(open('Film.csv'))

for i in range(1):
    print i,reader_object.next()

что дает мне

0 ['value1', 'value2', 'value3']
01.03.2014

Ответы:


1

Вы можете перебирать значения в первой строке следующим образом:

import csv
reader_object = csv.reader(open('Film.csv'))

for index, col_value in enumerate(reader_object.next()):
    print '{} {}'.format(index, col_value)

выходы:

0 'value1'
1 'value2'
2 'value3'
etc.

Объект Reader, возвращаемый csv.reader(), заключает в себя переданный вами итератор ( в данном случае дескриптор файла) и предоставляет метод next(), возвращающий последовательные строки; прежде чем вернуть их, он превращает каждую строку в список, разделяя предоставленный разделитель на Dialect, используя запятую по умолчанию, если она не была указана.

С этим списком значений столбца из первой строки мы можем выполнить итерацию с помощью цикла for и использовать enumerate(), чтобы получить увеличивающийся индекс по мере выполнения итерации.

01.03.2014
  • Это сделало именно то, что я хотел. Спасибо 01.03.2014

  • 2

    Попробуйте использовать enumerate:

    reader_object = csv.reader(open('Film.csv'))
    
    for i, line in enumerate(reader_object):
        print i,line
    

    Если у вас есть такой CSV:

    c1 c2 c3
    cc1 cc2 cc3
    ccc1 ccc2 ccc3
    

    Если вы хотите объединиться в столбец, вы можете сделать:

    with open('Film.csv') as f:
        reader_object = csv.reader(f, delimiter=' ')
        i=0
        for line in reader_object:
            for x in line:
                print i, ''.join(x)
                i+=1   
    

    Отпечатки:

    0 c1
    1 c2
    2 c3
    3 cc1
    4 cc2
    5 cc3
    6 ccc1
    7 ccc2
    8 ccc3
    
    01.03.2014

    3

    Вы должны использовать этот пример ниже

    import csv
    i = 0
    with open('Film.csv', 'rb') as csvfile:
        file_reader = csv.reader(csvfile)
        for row in file_reader:
            for col in row:
                print i, col.strip()
                i += 1
    
    01.03.2014
    Новые материалы

    Как проанализировать работу вашего классификатора?
    Не всегда просто знать, какие показатели использовать С развитием глубокого обучения все больше и больше людей учатся обучать свой первый классификатор. Но как только вы закончите..

    Работа с цепями Маркова, часть 4 (Машинное обучение)
    Нелинейные цепи Маркова с агрегатором и их приложения (arXiv) Автор : Бар Лайт Аннотация: Изучаются свойства подкласса случайных процессов, называемых дискретными нелинейными цепями Маркова..

    Crazy Laravel Livewire упростил мне создание электронной коммерции (панель администратора и API) [Часть 3]
    Как вы сегодня, ребята? В этой части мы создадим CRUD для данных о продукте. Думаю, в этой части я не буду слишком много делиться теорией, но чаще буду делиться своим кодом. Потому что..

    Использование машинного обучения и Python для классификации 1000 сезонов новичков MLB Hitter
    Чему может научиться машина, глядя на сезоны новичков 1000 игроков MLB? Это то, что исследует это приложение. В этом процессе мы будем использовать неконтролируемое обучение, чтобы..

    Учебные заметки: создание моего первого пакета Node.js
    Это мои обучающие заметки, когда я научился создавать свой самый первый пакет Node.js, распространяемый через npm. Оглавление Глоссарий I. Новый пакет 1.1 советы по инициализации..

    Забудьте о Matplotlib: улучшите визуализацию данных с помощью умопомрачительных функций Seaborn!
    Примечание. Эта запись в блоге предполагает базовое знакомство с Python и концепциями анализа данных. Привет, энтузиасты данных! Добро пожаловать в мой блог, где я расскажу о невероятных..

    ИИ в аэрокосмической отрасли
    Каждый полет – это шаг вперед к великой мечте. Чтобы это происходило в их собственном темпе, необходима команда астронавтов для погони за космосом и команда технического обслуживания..


    Для любых предложений по сайту: [email protected]