Форум сайта python.su
Доброго времени суток!
Есть .dat файл с несколькими колонками числовых данных (если важно, сохранен из программы Origin).
Можно ли эти данные импортировать численно в массивы и как это сделать?
Искал способы и в рунете, и не в нем, но как-то везде сумбурно, а у меня еще и не работает почему-то ничего.
Буду очень благодарен!
Офлайн
Пример файла приложи к сообщению.
Офлайн
sevvvich:) перечислите это все.
и не работает почему-то ничего.
import numpy as np r=np.loadtxt("a.dat")
Офлайн
вот файлик
Прикреплённый файлы: datafile123.dat (4,0 KБ)
Офлайн
>>> Traceback (most recent call last): File "<editor selection>", line 2, in <module> File "C:\comp\Python27\lib\site-packages\numpy\lib\npyio.py", line 853, in loadtxt items = [conv(val) for (conv, val) in zip(converters, vals)] ValueError: invalid literal for float(): 0,500025
Отредактировано doza_and (Март 21, 2016 21:08:41)
Офлайн
sevvvich
Питон использует символ точки в качестве разделителя дробной части в числах. У вас в файле запятая. Значит нужно как минимум заменить ее на точку.
Если файлы не большие, то хватит и такого примера:
text = open('datafile123.dat').read().replace(',', '.') data = [float(line) for line in text.splitlines()]
Офлайн
если небольшие….
А если большие то надо их пихать в БД
Офлайн
sed -i~ 's/,/./g' file.dat
Отредактировано py.user.next (Март 22, 2016 00:45:06)
Офлайн
sevvvichЕсли правильно понимаю Origin это рисовалка графиков. там можно конечно вычисления над столбцами делать, но не более того. Значит у вас есть текстовый файл с исходными данными, которые вы импортировали в Origin. Читайте их. Исключите Origin из обработки данных.
сохранен из программы Origin
Офлайн