我有一个数据框架,其中包含从某些文件中提取的值。如何过滤或提取col 1中值u之后的前两行数据。col 1值的范围为80,我想在值u之后捕获。值u可能是第0列中新filex之后的两个或三个文件,或者根本不显示,如file3中所示。
0 1 2 3
0 file1 value u file1 value u
1 file1 value u file1 value u
2 file1 value 85 file1 th_v 5
3 file1 value 10 file1 th_v 2
4 file1 value 10 file1 th_v 4
5 file1 value 88 file1 th_v 4
6 file2 value u file2 value u
7 file2 value 88 file2 th_v 7
8 file2 value 2 file2 th_v 4
9 file2 value 88 file2 th_v 3
10 file2 value 0 file2 th_v 1
11 file3 value 89 file3 th_v 5
12 file3 value 2 file3 th_v 5
13 file3 value 4 file3 th_v 1
output:
0 1 2 3
0 file1 value 85 file1 th_v 5
1 file1 value 10 file1 th_v 2
2 file2 value 88 file2 th_v 7
3 file2 value 2 file2 th_v 4
4 file3 value 89 file3 th_v 5
5 file3 value 2 file3 th_v 5
答案 0 :(得分:1)
如果可以使用成对的列的相同数据模式(相同的文件列组和相同的值列结尾),则测试最后一个值是否为数字,然后GroupBy.head
:
df = df[df[1].str.contains('\d$')].groupby(0).head(2)