pandas 0.23 - Panel.where()

pandas.Panel.where




pandas

pandas.Panel.where

Panel.where(cond, other=nan, inplace=False, axis=None, level=None, errors='raise', try_cast=False, raise_on_error=None) [source]

स्व के रूप में एक ही आकार की एक वस्तु लौटाएं और जिसकी संबंधित प्रविष्टियां स्वयं से हैं जहां cond ट्रू है और अन्यथा other से other

पैरामीटर:

कंडोम: बूलियन NDFrame, सरणी की तरह, या कॉल करने योग्य

जहां cond सही है, मूल मूल्य रखें। जहां गलत है, other से संबंधित मूल्य के साथ बदलें। यदि कंडोम कॉल करने योग्य है, तो इसे NDFrame पर गिना जाता है और बूलियन NDFrame या सरणी को वापस करना चाहिए। कॉल करने योग्य इनपुट NDFrame नहीं बदलना चाहिए (हालाँकि पांडा इसकी जाँच नहीं करता है)।

संस्करण 0.18.1 में नया: एक कॉल करने योग्य का उपयोग कंडोम के रूप में किया जा सकता है।

अन्य : अदिश, NDFrame, या कॉल करने योग्य

प्रवेश जहां cond गलत है other से संबंधित मूल्य के साथ प्रतिस्थापित किया जाता है। यदि अन्य कॉल करने योग्य है, तो इसकी गणना NDFrame पर की जाती है और इसे स्केलर या NDFrame वापस करना चाहिए। कॉल करने योग्य इनपुट NDFrame नहीं बदलना चाहिए (हालाँकि पांडा इसकी जाँच नहीं करता है)।

संस्करण 0.18.1 में नया: एक कॉल करने योग्य अन्य के रूप में इस्तेमाल किया जा सकता है।

निष्क्रिय : बूलियन, डिफ़ॉल्ट गलत

डेटा पर जगह में ऑपरेशन करना है या नहीं

axis : alignment axis if needed, default None
level : alignment level if needed, default None

त्रुटियाँ : str, {'raise', 'अनदेखा'}, डिफ़ॉल्ट 'उठाना'

  • raise : अपवादों को raise अनुमति दें
  • ignore : अपवादों को दबाएं। त्रुटि पर मूल वस्तु वापस करें

ध्यान दें कि वर्तमान में यह पैरामीटर परिणामों को प्रभावित नहीं करेगा और हमेशा एक उपयुक्त dtype के साथ तालमेल करेगा।

try_cast : बूलियन, डिफ़ॉल्ट गलत

परिणाम वापस इनपुट प्रकार में डालने का प्रयास करें (यदि संभव हो),

raise_on_error : बूलियन, डिफ़ॉल्ट सत्य

क्या अमान्य डेटा प्रकारों को बढ़ाना है (उदाहरण के लिए स्ट्रिंग्स पर प्रयास करना)

संस्करण 0.21.0 के बाद से पदावनत।

यह दिखाता है:
wh : same type as caller

यह भी देखें

DataFrame.mask()

टिप्पणियाँ

जहाँ की विधि if-then मुहावरे का एक अनुप्रयोग है। DataFrame को कॉल करने वाले प्रत्येक तत्व के लिए, अगर Cond True है तत्व का उपयोग किया जाता है; अन्यथा DataFrame other से संबंधित तत्व का उपयोग किया जाता है।

DataFrame.where() लिए हस्ताक्षर DataFrame.where() भिन्न है। मोटे तौर पर df1.where(m, df2) के बराबर है।

आगे के विवरण और उदाहरणों के लिए देखें कि indexing में where प्रलेखन है।

उदाहरण

>>> s = pd.Series(range(5))
>>> s.where(s > 0)
0    NaN
1    1.0
2    2.0
3    3.0
4    4.0
>>> s.mask(s > 0)
0    0.0
1    NaN
2    NaN
3    NaN
4    NaN
>>> s.where(s > 1, 10)
0    10.0
1    10.0
2    2.0
3    3.0
4    4.0
>>> df = pd.DataFrame(np.arange(10).reshape(-1, 2), columns=['A', 'B'])
>>> m = df % 3 == 0
>>> df.where(m, -df)
   A  B
0  0 -1
1 -2  3
2 -4 -5
3  6 -7
4 -8  9
>>> df.where(m, -df) == np.where(m, df, -df)
      A     B
0  True  True
1  True  True
2  True  True
3  True  True
4  True  True
>>> df.where(m, -df) == df.mask(~m, -df)
      A     B
0  True  True
1  True  True
2  True  True
3  True  True
4  True  True