У меня есть сотни тысяч текстовых файлов данных для чтения.На данный момент я импортирую данные из текстовых файлов каждый раз, когда запускаю код.Возможно, простым решением было бы просто переформатировать данные в файл для более быстрого чтения.Во всяком случае, сейчас все текстовые файлы, которые у меня есть, выглядят так:
User: unknown
Title : OE1_CHANNEL1_20181204_103805_01
Sample data
Wavelength OE1_CHANNEL1
185.000000 27.291955
186.000000 27.000877
187.000000 25.792290
188.000000 25.205620
189.000000 24.711882
.
.
.
Код, в который я читаю и импортирую текстовые файлы:
# IMPORT DATA
path = 'T2'
if len(sys.argv) == 2:
path = sys.argv[1]
files = os.listdir(path)
trans_import = []
for index, item in enumerate(files):
trans_import.append(np.loadtxt(path+'/'+files[1], dtype=float, skiprows=4, usecols=(0,1)))
Полученный массив выглядит в проводнике переменныхкак: {ndarray} = [[185.27.291955] \ n [186.27.000877] \ n ...]
Мне интересно, как я мог ускорить эту часть?Сейчас для импорта ~ 4 тыс. Текстовых файлов требуется немного больше времени.В каждом текстовом файле (спектр) есть 841 строка.Выходные данные, которые я получаю с этим кодом, равны 841 * 2 = 1682. Очевидно, он рассматривает \ n как строку ...