python:按照不规则的模式切片

python:按照不规则的模式切片,python,pandas,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

在下面,您可以找到一个熊猫时间序列的摘录。我想将空白处分隔开的行切分。有一个循环模式,即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

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

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

你有代码给我们看吗?没有,对不起。在开始编写代码之前,我更喜欢整理一下如何继续。这个问题是重复的。谢谢。我已经想到了一种迭代方法,但我想知道是否有一种矢量化的方法。