Как сделать текстовый файл в желаемом формате в CSV, используя Python - PullRequest
0 голосов
/ 29 апреля 2018

В настоящее время я работаю над созданием некоторых графиков и таких для набора данных, сгенерированного мной с помощью другого скрипта Python. Цель состоит в том, чтобы эти графики генерировались автоматически после запуска другой программы, поэтому ручное редактирование здесь не вариант.

Исходный код генерирует текстовый файл в формате: center_freq 791125000.0 freq 790625000.0 power_db 0.211535437034 noise_floor_db -100.913246571

Примерно 50 из этих строк приходят из кода каждый раз с разными результатами. Мне удалось разделить это на список каждого отдельного элемента и превратить его в файл CSV, в котором каждая строка или целое находится в отдельной строке.

Однако, работая с numpy, кажется, было бы проще, если бы в верхней части каждого столбца были только заголовки для категории, за которыми следовали все данные. Я не уверен, как изменить его текущее состояние, это мой код на данный момент:

Чтобы взять текстовый файл и создать список:

     import sys

     open_file = open("usrp_official_jamming.txt","r")
     f = open("datafiles.txt","w+")
     lst = list()
     sys.stdout = f


     for line in open_file:
            words = line.split()

     for word in words:
            lst.append(word)

     n = 27
     lst2 = lst[n:-1]
     print(lst2)

Затем взять список и сгенерировать CSV:

    import csv
    from itertools import izip_longest

    with open('datafiles.txt') as f:
        with open('usrpcsv.csv', 'wb') as csv_file:
            writer = csv.writer(csv_file)
            for line in f.readlines():
                 data = line.split(', ')
                 chunks= [data[x:x+8] for x in xrange(0, len(data), 8)]
                 for chunk in chunks:
                     writer.writerow(chunk)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...