擅长:python、mysql、java
<p>这个答案是基于每个“帧”包含相同行数的假设</p>
<p>首先我们用pandas read_csv()读取文件。我们利用comment参数省略每个标题,只读入数据</p>
<pre><code>df = pd.read_csv('data.txt', comment='#', delim_whitespace=True, header=None)
df
0 1 2 3 4 5
0 21101400B 86 12B 110 325 25
1 10100000 200B 6B 110 325 77
2 20 95300 -9999 -27B 100-9999-9999 NaN
3 10 92500 820B -39B 90 290
4 21101400B 86 14B 110 325 25
5 10100000 200B 2B 110 325 77
6 20 95300 -9999 -85B 100-9999-9999 NaN
7 10 92500 820B -25B 90 290
</code></pre>
<p>然后使用for循环来解析每个帧并将其存储在一个列表中。我假设行数=4</p>
<pre><code>frames = []
for begin in range(0,len(df),4):
frames.append(df[begin:begin+4])
frames[0]
0 1 2 3 4 5
0 21101400B 86 12B 110 325 25
1 10100000 200B 6B 110 325 77
2 20 95300 -9999 -27B 100-9999-9999 NaN
3 10 92500 820B -39B 90 290
</code></pre>