Я пытаюсь захватить данные с осциллографа с помощью скрипта Python. Скрипт сохраняет его как в формате csv. Мне нужно добавить несколько строк текста, описывающих данные в начале.
Я просмотрел существующие темы, чтобы узнать, есть ли возможное решение. Я только начал изучать Python. Я использую код, поставляемый с прибором.
Это часть скрипта, который сохраняет данные в формате csv.
NewD = (np.insert(Wav_Data, 0, DataTime, axis = 0)).T
filename = BASE_DIRECTORY + BASE_FILE_NAME + ".csv"
now = time.time() # Only to show how long it takes to save
with open(filename, 'w') as filehandle:
np.savetxt(filename, NewD, delimiter = ',', header = column_titles)
Я попытался использовать раздел ниже из другого кода, но не знаю, как добавить его в файл csv.
with open("notes.txt") as f:
NOTES = f.readlines()
NOTES = "".join(NOTES)
Не удается найти файл notes.txt, который находится в том же каталоге, что и скрипт. С нетерпением жду ваших отзывов. Заранее спасибо.
Обновлено до:
# Save data
NewD = (np.insert(Wav_Data, 0, DataTime, axis = 0)).T
filename = BASE_DIRECTORY + BASE_FILE_NAME + ".csv"
with open("notes.txt") as f:
NOTES = f.readlines()
NOTES = "".join(NOTES)
with open(filename, "a") as fh:
fh.write(NOTES)
now = time.time() # Only to show how long it takes to save
with open(filename, 'w') as filehandle:
np.savetxt(filename, NewD, delimiter = ',', header = column_titles)
Спасибо. Я изменил это на это.
вы запускаете скрипт в том же каталоге, что и notes.txt?
Да еще раз проверил.
Просто откройте файл для добавления или напишите
Если вы хотите сначала написать CSV, обратите внимание:
with open("notes.txt") as f:
NOTES = f.readlines()
NOTES = "".join(NOTES)
with open(filename, "w") as fh:
fh.write(NOTES)
# this time we give np the opened filehandle, not the filename
np.savetxt(fh, NewD, delimiter = ',', header = column_titles)
Спасибо. Я пробовал это, теперь я не получаю никаких ошибок, но текст не вставляется в csv. Как я могу это сделать?
да. Должен ли я указать полный путь к файлу notes.txt, который необходимо добавить в файл csv?
OK. Это очень запутанно. Можете ли вы A) записать в имя файла B) прочитать notes.txt C) убедиться, что NOTES содержит текстовые данные, которые вы хотите добавить к имени файла
А) и В) верны. Я считаю, что B) также успешно выполняется без ошибок, и когда я набираю ПРИМЕЧАНИЯ на консоли, вывод дает то, что содержится в файле notes.txt. Единственное, сейчас он не добавляется в csv, как хотелось бы.
Не могли бы вы обновить код в исходном вопросе, чтобы показать, как и где вы добавляете примечания в CSV?
ах. теперь я вижу, что ты делаешь. Я отредактирую свой пост. Ваше добавление и запись неверны
Буду. Большое спасибо. Я могу получить csv с текстом, предшествующим данным. Мне просто нужно устранить некоторые ошибки с плавающей строкой. Несмотря на это, данные все еще сохраняются.
open(filename, 'a')
будет добавляться к файлу, а не перезаписывать его.