pandas 0.23 - pandas.api.types.union_categoricals()

pandas.api.types.union_categoricals




pandas

pandas.api.types.union_categoricals

pandas.api.types.union_categoricals(to_union, sort_categories=False, ignore_order=False) [source]

श्रेणीबद्ध, संघबद्ध श्रेणियों की सूची-प्रकार को मिलाएं। सभी श्रेणियों में एक ही dtype होना चाहिए।

संस्करण में नया 0.19.0।

पैरामीटर:

to_union : सूची-प्रकार की श्रेणीबद्ध, श्रेणीबद्धता,

या श्रृंखला dtype = 'श्रेणी' के साथ

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

यदि सही है, तो परिणामी श्रेणियां लेक्सर्ड हो जाएंगी, अन्यथा उन्हें डेटा में दिखाई देने का आदेश दिया जाएगा।

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

यदि सही है, तो श्रेणीबद्धता के आदेशित विशेषता को अनदेखा कर दिया जाएगा। एक अव्यवस्थित श्रेणीबद्ध में परिणाम।

संस्करण में नया 0.20.0।

यह दिखाता है:
result : Categorical
जन्म देती है:

त्रुटि प्रकार

  • सभी इनपुट में एक ही dtype नहीं है
  • सभी इनपुट में समान ऑर्डर की गई संपत्ति नहीं है
  • सभी इनपुट आदेश दिए गए हैं और उनकी श्रेणियां समान नहीं हैं
  • Sort_categories = सही और श्रेणीबद्ध आदेश दिए गए हैं

ValueError

श्रेणीबद्ध की खाली सूची पारित की गई

टिप्पणियाँ

श्रेणियों के बारे में अधिक जानने के लिए, link देखें

उदाहरण

>>> from pandas.api.types import union_categoricals

यदि आप उन श्रेणियों को श्रेणीबद्ध करना चाहते हैं, union_categoricals जरूरी नहीं कि समान श्रेणियां हों, तो union_categoricals श्रेणी-प्रकार के union_categoricals को संयोजित करेगा। नई श्रेणियां संयुक्त श्रेणियों का संघ होंगी।

>>> a = pd.Categorical(["b", "c"])
>>> b = pd.Categorical(["a", "b"])
>>> union_categoricals([a, b])
[b, c, a, b]
Categories (3, object): [b, c, a]

डिफ़ॉल्ट रूप से, परिणामी श्रेणियों को आदेश दिया जाएगा क्योंकि वे डेटा की categories में दिखाई देते हैं। यदि आप चाहते हैं कि श्रेणियां लेक्सर्सोइड हो, तो sort_categories=True तर्क का उपयोग करें।

>>> union_categoricals([a, b], sort_categories=True)
[b, c, a, b]
Categories (3, object): [a, b, c]

union_categoricals एक ही श्रेणियों के दो श्रेणीबद्धों और आदेश की जानकारी के संयोजन के मामले में भी काम करता है (उदाहरण के लिए आप जो भी append थे)।

>>> a = pd.Categorical(["a", "b"], ordered=True)
>>> b = pd.Categorical(["a", "b", "a"], ordered=True)
>>> union_categoricals([a, b])
[a, b, a, b, a]
Categories (2, object): [a < b]

TypeError उठाता है क्योंकि श्रेणियां क्रमबद्ध हैं और समान नहीं हैं।

>>> a = pd.Categorical(["a", "b"], ordered=True)
>>> b = pd.Categorical(["a", "b", "c"], ordered=True)
>>> union_categoricals([a, b])
TypeError: to union ordered Categoricals, all categories must be the same

संस्करण में नया 0.20.0

विभिन्न श्रेणियों या आदेशों के साथ क्रमबद्ध वर्गीकरणों को ignore_ordered=True तर्क का उपयोग करके जोड़ा जा सकता है।

>>> a = pd.Categorical(["a", "b", "c"], ordered=True)
>>> b = pd.Categorical(["c", "b", "a"], ordered=True)
>>> union_categoricals([a, b], ignore_order=True)
[a, b, c, c, b, a]
Categories (3, object): [a, b, c]

union_categoricals एक श्रेणीबद्ध डेटा या श्रेणीबद्ध डेटा वाले Series साथ भी काम करता है, लेकिन ध्यान दें कि परिणामी सरणी हमेशा एक सादे Categorical

>>> a = pd.Series(["b", "c"], dtype='category')
>>> b = pd.Series(["a", "b"], dtype='category')
>>> union_categoricals([a, b])
[b, c, a, b]
Categories (3, object): [b, c, a]