Импорт значений, разделенных разделителем, с пандами для таблицы с отступом - PullRequest
1 голос
/ 11 июня 2019

Я работаю над диссертационным проектом, и мне нужно проанализировать данные в файле .dat, который был сгенерирован программой FORTRAN.Я бы предпочел не изменять оригинальную программу, потому что она была сделана моим советником.Файл представляет собой таблицу размером N на N, которая имеет следующий формат:

..
  3.57999980395659056E-01  3.56725977862117904E-01  3.40374191936946680E-01
  3.22943610909491363E-01  3.43143848106836513E-01  3.32229122795851706E-01
  3.25043838439847577E-01  3.31033248287544712E-01  3.36685762611352801E-01

Две точки не включены в файл, я разместил их там, чтобы показать, что каждая строка имеет отступ с двумя пробелами.Я импортирую эти данные с пакетом pandas:

df = pd.read_csv("pathname", sep="\s\s")

Проблема в том, что первая строка данных не импортируется: когда я проверил значения импортированной матрицы, я получил:

>>> df.values[1][1]
0.3310332482875447

Это должно быть значение компонента [2][1], а не [1][1] (и действительно, матрица имеет 255 строк и 256 столбцов, когда исходный файл представляет собой квадрат 256 на 256).Я подозреваю, что проблема связана с отступом в первом столбце.Я хотел бы знать, есть ли решение, которое не требует, чтобы я изменял файлы вручную (их было 4000 для каждого моделирования), и желательно, чтобы он использовал пакет pandas (потому что он очень удобен и прост в использовании).

...