【发布时间】:2018-03-20 17:16:29
【问题描述】:
我想只保留Dataframe 的行,条件如下:开始条件为col1 = 0, col2 = 1 的间隔(包括)和结束col1 = 0, col2 = 2 的间隔。
样本数据
import pandas as pd
pd.DataFrame({'id':['id1','id1','id1','id1','id1','id1','id1','id1','id1','id1','id1','id2','id2','id2','id2','id2']
,'col1':[0,1,1,0,1,0,0,1,1,0,0,1,0,0,1,1],'col2':[1,2,2,1,2,2,1,2,2,2,1,2,2,1,2,2]})
看起来像这样:
col1 col2 id
0 0 1 id1
1 1 2 id1
2 1 2 id1
3 0 1 id1
4 1 2 id1
5 0 2 id1
6 0 1 id1
7 1 2 id1
8 1 2 id1
9 0 2 id1
10 0 1 id1
11 1 2 id2
12 0 2 id2
13 0 1 id2
14 1 2 id2
15 1 2 id2
输出样本
我们可以意识到col1,col2中只有带有0-1,0-2的“块”或间隔。
col1 col2 id
3 0 1 id1
4 1 2 id1
5 0 2 id1
6 0 1 id1
7 1 2 id1
8 1 2 id1
9 0 2 id1
10 0 1 id1
11 1 2 id2
12 0 2 id2
结果行 0,1,2,13,14,15 被删除,因为它们不在 0-1 , 0-2 区间内。
【问题讨论】:
标签: python pandas dataframe data-cleaning