我有一些数据文件,它们每隔一段时间重复它们的4个标题行,作为分页的一种形式。因此,我不能使用自动导入方法,因为这些额外的标题行妨碍了我的工作。我可以逐行阅读,检查每一行是否是一个头,只检查头的第一行并跳过下面的3行,或者简单地用一个匹配6个连续数据列的正则表达式来解析整个文件,它将匹配每个数据行并轻松地跳过头。在
我想知道是否有一种方法可以用pandas、numpy、csv库或其他一些我没有想到的技巧来导入数据。在
虽然regex很快,但我将要做一系列批处理和权衡研究,我希望我的后处理能够快速处理几十或数百个文件,以显示比较。在
我刚刚意识到,每页的行数似乎总是55行,所以也许一些简单的计数就行了,或者模数——我无论如何都会问这个问题,因为我很好奇是否有人找到了一个处理重复标题或类似“分块”数据的库。在
我将为固定长度的页面添加一个基于模数的解决方案作为答案。。。在
谢谢你的其他想法!在
编辑:这里有一个格式的例子。。。实际上,每页有55行数据,但为了简洁起见,我将其限制在5行。而且,是的,在每个标题的开头的第一列中有一个1,所以也可以使用它。我很确定1
在旧版本的代码中曾经是一个FormFeed字符,这对于在大型机上运行的基于FORTRAN的代码的老式分页是有意义的。在
1 DATE: 03/10/14 Analysis Title
TIME PRESSURE MDOT THRUST PT AB D
SEC PSIA LBM/SEC LBF PSIA IN^2 IN
1.769 1372.02 1220.0 363622.4 1332.78 60361.37 0.050
1.769 1372.02 1220.0 363622.4 1332.78 60361.37 0.050
1.769 1372.02 1220.0 363622.4 1332.78 60361.37 0.050
11.769 1372.02 1220.0 363622.4 1332.78 60361.37 0.050
11.769 1372.02 1220.0 363622.4 1332.78 60361.37 0.050
1 DATE: 03/10/14 Analysis Title
TIME PRESSURE MDOT THRUST PT AB D
SEC PSIA LBM/SEC LBF PSIA IN^2 IN
1.769 1372.02 1220.0 363622.4 1332.78 60361.37 0.050
1.769 1372.02 1220.0 363622.4 1332.78 60361.37 0.050
1.769 1372.02 1220.0 363622.4 1332.78 60361.37 0.050
1.769 1372.02 1220.0 363622.4 1332.78 60361.37 0.050
1.769 1372.02 1220.0 363622.4 1332.78 60361.37 0.050
1 DATE: 03/10/14 Analysis Title
TIME PRESSURE MDOT THRUST PT AB D
SEC PSIA LBM/SEC LBF PSIA IN^2 IN
1.769 1372.02 1220.0 363622.4 1332.78 60361.37 0.050
1.769 1372.02 1220.0 363622.4 1332.78 60361.37 0.050
这里有一个固定列数和每页固定行数的解决方案。我想我应该继续把它包装成一个类,因为这就是我使用它的方式(需要加载、处理、绘制、保存为其他格式,等等,这样一个类才有意义)。使用模数来检查标题行上我认为是否优雅。在
相关问题 更多 >
编程相关推荐