python:根据不规则图案切片

时间:2014-01-31 16:15:55

标签: python pandas

下面,您可以找到大熊猫时间序列的摘录。我想切割由空白区分开的行。有一个重复的模式,即21倍的值X,四个不同的值ABCD,21倍的值Y,四个不同的值EFGH,21倍的值Z等。在这种情况下,我有兴趣获得BCDY,FGHZ等。

问题是这种模式有时会因缺少数据而中断。

有什么想法吗?感谢。

2014-01-20 00:00:00    197021
2014-01-20 00:01:00    197021
2014-01-20 00:02:00    197021
2014-01-20 00:03:00    197021
2014-01-20 00:04:00    197021
2014-01-20 00:05:00    197021
2014-01-20 00:06:00    197021
2014-01-20 00:07:00    197021
2014-01-20 00:08:00    197021
2014-01-20 00:09:00    197021
2014-01-20 00:10:00    197021
2014-01-20 00:11:00    197021
2014-01-20 00:12:00    197021
2014-01-20 00:13:00    197021
2014-01-20 00:14:00    197021
2014-01-20 00:15:00    197021
2014-01-20 00:16:00    196836

2014-01-20 00:17:00    196865
2014-01-20 00:18:00    196787
2014-01-20 00:19:00    196915
2014-01-20 00:20:00    196902

2014-01-20 00:21:00    196902
2014-01-20 00:22:00    196902
2014-01-20 00:23:00    196902
2014-01-20 00:24:00    196902
2014-01-20 00:25:00    196902
2014-01-20 00:26:00    196902
2014-01-20 00:27:00    196902
2014-01-20 00:28:00    196902
2014-01-20 00:29:00    196902

1 个答案:

答案 0 :(得分:0)

你能不能只迭代这些行,将所有内容添加到当前组的行列表中,然后在空行中,更改你要附加的列表?这假设缺少的数据不会返回空字符串而不创建新行。

x = 1
groups = { 1 : [], 2 : [], 3 : [] }
for line in file_obj.readlines():
    if line:
      groups[x].append(line)
    else:
       x += 1
       if x > 3:
          x = 0