У меня есть 10 файлов CSV с миллионом записей. Я хочу прочитать 10 файлов параллельно, но с определенной скоростью (10 записей за 5 секунд). Каков эффективный способ сделать это? Я использую Windows, если кто-то предложит использовать планировщик ОСПрочитайте много файлов параллельно с определенной частотой дискретизации
0
A
ответ
0
- Открыть 10 файлов.
- Прочтите 1 запись из каждого файла (или 10, вопрос непонятен).
- Используйте эти записи.
- Подождите, пока не истечет текущий 5-секундный интервал.
- Перейти к 2.
2
Я хотел бы попробовать joblib Вот некоторые непроверенные пример кода ...
from joblib import Parallel, delayed
import time
#make a function that takes ONE filename and processes it the way you want
def process_csv(filename):
count = 0
#open file using method of choice plain file or csv
f = open(filename)
for line in f:
#do we ignore header?
if count == 0:
count += 1
continue
arr = line.strip().split(',')#use csv module if not simple text
#do something, store it, whatever
if count % 10 == 0:
time.sleep(5)
return 1
if __name__ == '__main__': #windows-only protection
filenames = ['file1', 'file2', ..., 'file10']
dummy = Parallel(n_jobs=10)(delayed(process_csv)(fn) for fn in filenames)
сейчас, смотрите, если кто-то добавляет к этим файлам, как вы читаете их. Этот код, вероятно, не будет работать.
Смежные вопросы
- 1. Как записать аудиоданные с определенной частотой дискретизации?
- 2. Matlab, читаемый из последовательного порта с определенной частотой дискретизации
- 3. Получил фрейм с частотой дискретизации 44100, в формате MP3 с частотой дискретизации 48000. Mp3FileReader не поддерживает изменения частоты дискретизации
- 4. Прочитайте много небольших файлов последовательно
- 5. Мигает изображением с определенной частотой
- 6. Плагин ALSA dmix и проблемы с частотой дискретизации
- 7. Загрузите много файлов параллельно? (Linux/Python?)
- 8. Прочитайте несколько текстовых файлов параллельно с помощью Cuda
- 9. с пониженной частотой дискретизации непрерывных запросов с подмножеством тегов
- 10. Обнаружение шаблона данных, сгенерированного с определенной частотой
- 11. Как audioRecord извлекает данные с заданной частотой дискретизации
- 12. время согласования сигналов времени с разной частотой дискретизации
- 13. Повторная выборка сигнала ЭЭГ с частотой непостоянной частоты дискретизации
- 14. Нужно читать датчики Android с фиксированной частотой дискретизации
- 15. iOS: аудиофайл 44k должен воспроизводиться с частотой дискретизации 22k
- 16. Прочитайте несколько файлов с fileinput в определенной строке
- 17. Прочитайте много файлов Matlab, измените их и создайте много новых файлов Matlab в Python
- 18. Частота кадров и частота дискретизации
- 19. Java Swing: Прочитайте много файлов изображений без проблем памяти?
- 20. Прочитайте и объедините много CSV-файлов в data.table
- 21. вызов функции много раз параллельно
- 22. Прочитайте много файлов и сделать столбцы в панд
- 23. Прочитайте много текстовых файлов в SQL Server Express
- 24. Прочитайте несколько файлов с C++
- 25. Чтение многих файлов параллельно
- 26. Получите много файлов с сервером
- 27. Конструкция базы данных для получения данных с высокой частотой дискретизации, графики на нескольких уровнях масштабирования
- 28. как повторить имена столбцов с определенной частотой в R
- 29. Как мы можем усилить звук с определенной частотой в iPhone?
- 30. LabView --- Как сопоставить диапазон значений ускорения с определенной частотой?
Это может быть только я, но я не уверен, какова ваша конечная цель. Похоже, вы пытаетесь объединить две задачи, которые не должны сочетаться. –
Я хочу имитировать потоки данных. Все данные у меня есть во многих файлах. поэтому мне нужно выполнять одинаковые процессы для всех файлов параллельно, и эти файлы представляют разные типы данных. Например, у меня есть 10 типов данных A, B, C, .. в file1, file2, file3, ... Я хочу читать 10 записей из данных типа A каждые 5 секунд из файла 1 и то же самое для других файлов , – Yasmin
Если речь идет о потоке данных, я бы предложил, чтобы какая-то другая программа (Python?) Просто записывала 10 записей/5 секунд. Каждая программа может писать в другой файловый дескриптор (если Windows поддерживает это) или создавать TCP-соединения в разных портах для каждой каждой программы для прослушивания и чтения потоков данных. – Evert