Python 数据帧比较

Python 数据帧比较,python,numpy,pandas,Python,Numpy,Pandas,我正在为一个项目学习Pandas数据框架,在理解一些操作符以及如何使用它们时遇到了困难。在一种情况下,我有一个数据帧用于生产数据,另一个用于目标。我可以在生产数据中获得满足目标和未使用目标的项目: good = prod['A'][prod['A'] >= target['A']] bad = prod['A'][prod['A'] < target['A']] good=prod['A'][prod['A']>=target['A']] 坏=产品['A'][prod['A']=t

我正在为一个项目学习Pandas数据框架,在理解一些操作符以及如何使用它们时遇到了困难。在一种情况下,我有一个数据帧用于生产数据,另一个用于目标。我可以在生产数据中获得满足目标和未使用目标的项目:

good = prod['A'][prod['A'] >= target['A']]
bad = prod['A'][prod['A'] < target['A']]
good=prod['A'][prod['A']>=target['A']]
坏=产品['A'][prod['A']
而且效果很好。但在某些情况下,我有一个上下目标,这就是我被卡住的地方。我需要找到高于上目标的值、低于下目标的值以及介于两者之间的值,并获得3个单独的数据帧。我尝试了似乎显而易见的处理普通列表的方法:

aboveTargetA = prod['A'][prod['A'] >= targetA['A']]
belowTargetB = prod['A'][prod['A'] <= targetB['A']]
betweenTargets = prod[[col for index, col in df.iterrows() if col not in aboveTargetA and col not in belowTargetB]]
overtargeta=prod['A'][prod['A']>=targetA['A']]

belowTargetB=prod['A'][prod['A']您可以使用多个条件执行布尔索引:

prod['A'][(prod['A'] < targetA['A']) & (prod['A'] > targetB['A'])]
prod['A'][(prod['A']targetB['A'])]
另见