Python: Как я могу прочитать отформатированный файл без разделителей столбцов в массив NumPy? - PullRequest
0 голосов
/ 27 января 2019

У меня есть старый файл VSOP87 для вычисления положения Юпитера.Файл в ascii и отформатирован с размерами столбцов, которые варьируются в зависимости от столбца, но постоянны между строками.Например (выбран из ~ 3500 строк):

4510   17  0  0  0  0  1 -3  0  0  0  0  0  0 -0.00003166372     0.00003746628     0.00004905419 1.32084631684     110.20632121940 
4510   18  0  0  0  0  4-10  0  0  0  0  0  0  0.00005031135     0.00001683362     0.00005305283 1.30671236848      14.22709400160 

Формат этих строк:

i2,3i1,i5,12i3, f15.11,2f18.11,f14.11,f20.11

, т. Е. Целое число из 2 цифр (здесь «4»), за которым следуетна 3 дюйма из 1 цифры (5,1,0) и т. д. Я хотел бы прочитать файл в Python и сохранить данные в виде массива NumPy.(Первая) проблема возникает в приведенном здесь примере, потому что здесь нет разделителя столбцов, а функции, такие как genfromtxt (), видят «4-10» как одно поле, тогда как формат указывает, что они являются двумя полями i3.Как я могу передать формат файла / строк, например, в стиле Fortran (как указано выше) или в стиле C (что-то вроде "% 2i% 1i% 1i% 1i% 5i ...")?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...