我有像这样的数据框
code Type num
a A 3
a A 4
a A 5
a B 6
b A 7
b A 8
c B 9
c C 10
我还有一个数据框,表示受限制的代码和类型以及每个代码和类型的num的上限。
code Type limit
a A 4
b A 7
c C 11
所以我想得到下面的结果
code Type num
a A 3
a A 4
a B 6
b A 7
c B 9
c C 10
如何选择和提取行?
答案 0 :(得分:1)
您可以使用merge
后跟filter
进程:
df.merge(df1, how="left")[lambda x: x.limit.isnull() | (x.num <= x.limit)].drop("limit", 1)
#code Type num
#0 a A 3
#1 a A 4
#3 a B 6
#4 b A 7
#6 c B 9
#7 c C 10