pandas 0.23 - DataFrame.pivot()

pandas.DataFrame.pivot




pandas

pandas.DataFrame.pivot

DataFrame.pivot(index=None, columns=None, values=None) [source]

दिए गए अनुक्रमणिका / स्तंभ मानों द्वारा व्यवस्थित डेटाफ़्रेम लौटाएं।

स्तंभ मानों के आधार पर डेटा रीसेट करें ("पिवट" तालिका बनाएँ)। परिणामी DataFrame की कुल्हाड़ियों बनाने के लिए निर्दिष्ट index / columns से अद्वितीय मानों का उपयोग करता है। यह फ़ंक्शन डेटा एकत्रीकरण का समर्थन नहीं करता है, कई मान कॉलम में एक मल्टीएंडेक्स के परिणामस्वरूप होंगे। रीसेट करने पर अधिक के लिए उपयोगकर्ता मार्गदर्शिका देखें।

पैरामीटर:

सूचकांक : स्ट्रिंग या ऑब्जेक्ट, वैकल्पिक

नए फ्रेम के इंडेक्स बनाने के लिए उपयोग करने के लिए कॉलम। यदि कोई नहीं है, तो मौजूदा सूचकांक का उपयोग करता है।

कॉलम : स्ट्रिंग या ऑब्जेक्ट

नए फ्रेम के कॉलम बनाने के लिए उपयोग करने के लिए कॉलम।

मान : स्ट्रिंग, ऑब्जेक्ट या पिछले की एक सूची, वैकल्पिक

नए फ़्रेम के मानों को पॉप्युलेट करने के लिए कॉलम (एस) का उपयोग करें। यदि निर्दिष्ट नहीं किया गया है, तो सभी शेष स्तंभों का उपयोग किया जाएगा और परिणाम में पदानुक्रमित अनुक्रमित कॉलम होंगे।

संस्करण 0.23.0 में परिवर्तित: स्तंभ नामों की सूची भी स्वीकार करें।

यह दिखाता है:

डेटा ढांचा

रिटर्न्स ने DataFrame को फिर से आकार दिया।

जन्म देती है:

ValueError:

जब कोई index , तो कई मूल्यों के साथ columns संयोजन होता है। जब आप को कुल करने की आवश्यकता हो तो DataFrame.pivot_table

यह भी देखें

DataFrame.pivot_table
धुरी का सामान्यीकरण जो एक सूचकांक / स्तंभ जोड़ी के लिए डुप्लिकेट मान को संभाल सकता है।
DataFrame.unstack
किसी स्तंभ के बजाय इंडेक्स मान के आधार पर धुरी।

टिप्पणियाँ

महीन-नियंत्रित नियंत्रण के लिए, संबंधित स्टैक / अनस्टैक विधियों के साथ पदानुक्रमित अनुक्रमण प्रलेखन देखें।

उदाहरण

>>> df = pd.DataFrame({'foo': ['one', 'one', 'one', 'two', 'two',
...                            'two'],
...                    'bar': ['A', 'B', 'C', 'A', 'B', 'C'],
...                    'baz': [1, 2, 3, 4, 5, 6],
...                    'zoo': ['x', 'y', 'z', 'q', 'w', 't']})
>>> df
    foo   bar  baz  zoo
0   one   A    1    x
1   one   B    2    y
2   one   C    3    z
3   two   A    4    q
4   two   B    5    w
5   two   C    6    t
>>> df.pivot(index='foo', columns='bar', values='baz')
bar  A   B   C
foo
one  1   2   3
two  4   5   6
>>> df.pivot(index='foo', columns='bar')['baz']
bar  A   B   C
foo
one  1   2   3
two  4   5   6
>>> df.pivot(index='foo', columns='bar', values=['baz', 'zoo'])
      baz       zoo
bar   A  B  C   A  B  C
foo
one   1  2  3   x  y  z
two   4  5  6   q  w  t

यदि कोई डुप्लिकेट हैं, तो एक ValueError उठाया जाता है।

>>> df = pd.DataFrame({"foo": ['one', 'one', 'two', 'two'],
...                    "bar": ['A', 'A', 'B', 'C'],
...                    "baz": [1, 2, 3, 4]})
>>> df
   foo bar  baz
0  one   A    1
1  one   A    2
2  two   B    3
3  two   C    4

ध्यान दें कि पहली दो पंक्तियाँ हमारे index और columns तर्क के लिए समान हैं।

>>> df.pivot(index='foo', columns='bar', values='baz')
Traceback (most recent call last):
   ...
ValueError: Index contains duplicate entries, cannot reshape