对数据块执行操作

时间:2018-10-04 23:49:56

标签: python pandas numpy dataframe

我有一个很大的文本文件,里面的数据我想以新格式重新排序。

*******unwanted headers********
results
- 
1 2 3 4 3 6 7 8
1 2 3 4 2 6 7 8
1 2 3 4 1 6 7 8
1 2 3
-
-
1 2 3 4 3 6 7 8
2 2 3 4 2 6 7 8
1 2 3
-
2 2 3 4 3 6 7 8
1 2 3 4 2 6 7 8
1 2 3
1 2 3
-

输入格式为:N,X,Y,E,T,x,y,z

我要执行以下操作:

  1. 忽略标题行
  2. 循环每个块(一个块是长度为8的任何连续行)
  3. 将T列从最低到最高排序
  4. 查看N列,检查第一行中是否有1,然后在下一行中有2(仅适用于长度为8的行)
  5. 获取两行的z,y,x,E
  6. 为每个块重复步骤3、4和5
  7. 输出应采用以下格式:z1 y1 x1 E1 z2 y2 x2 E2

这意味着我的代码不应报告前两个块的结果,因为它们不满足我设置的条件,但是第三个块将报告结果。

注意:数据是浮点数,而不是整数。

我已经尝试过此代码,但是它不起作用:

import fileinput
for Line in fileinput.input():
    Line = Line.split()
    if Line == '- ':
        continue
    if len(Line) == 8:
        'apply the conditions'
        continue
    if len(Line) != 8:
        break

0 个答案:

没有答案