df = pd.DataFrame({'a': [1,2,3], 'b': [4,5,6]})
Run Code Online (Sandbox Code Playgroud)
产生
a b
0 1 4
1 2 5
2 3 6
Run Code Online (Sandbox Code Playgroud)
给定一个 dict
d = {'a': 2, 'b': 5}
Run Code Online (Sandbox Code Playgroud)
我将如何提取数据框的行,其中 dict 的键值与所有列值匹配 - 所以在这种情况下
a b
1 2 5
Run Code Online (Sandbox Code Playgroud)
您可以比较Series和过滤:
df[(df == pd.Series(d)).all(1)]
a b
1 2 5
Run Code Online (Sandbox Code Playgroud)
此比较在索引/列上对齐并针对每行进行广播。