पांडस डेटाफ्रेम तुलना

मैं एक परियोजना के लिए पांडस डेटाफ्रेम सीख रहा हूं और कुछ ऑपरेटरों को समझने में परेशानी हो रही हूं और मैं उनका उपयोग कैसे कर सकता हूं। एक मामले में, मेरे पास उत्पादन डेटा के लिए एक डेटाफ्रेम है और दूसरा लक्ष्य के लिए है। मैं उन उत्पादन डेटा में आइटम प्राप्त कर सकता हूं जो लक्ष्य से मिले थे और जो उपयोग नहीं कर रहे थे:

good = prod['A'][prod['A'] >= target['A']]
bad = prod['A'][prod['A'] < target['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]]

मुझे यकीन नहीं है कि मुझे इन डेटाफ्रेम और जेनरेटर के साथ यह कैसे करना चाहिए क्योंकि मैंने पहले कभी उनके साथ काम नहीं किया है। क्या कोई मुझे तुलना के लिए सही दिशा में इंगित कर सकता है?

0

1 उत्तर

आप कई स्थितियों के साथ बूलियन अनुक्रमण कर सकते हैं:

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

See also http://pandas.pydata.org/pandas-docs/dev/indexing.html#boolean-indexing

0
जोड़ा