Pandas में स्तर नाम का उपयोग करके MultiIndex के स्तरों को पुनर्व्यवस्थित करने के लिए MultiIndex.reorder_levels() मेथड का उपयोग करें। पुनर्व्यवस्थित किए जाने वाले स्तरों (स्तर नामों) को तर्क के रूप में पास करें।
आवश्यक लाइब्रेरी आयात करें
import pandas as pd
सरणियाँ बनाएं और MultiIndex बनाएं
arrays = [[2, 4, 3, 1], ['Peter', 'Chris', 'Andy', 'Jacob'], [50, 30, 40, 70]]
multiIndex = pd.MultiIndex.from_arrays(arrays, names=('rank', 'student', 'points'))
स्तर नाम का उपयोग करके MultiIndex के स्तरों को पुनर्क्रमित करें
"order" पैरामीटर का उपयोग स्तर नाम को उस रूप में सेट करने के लिए किया जाता है जिससे स्तरों को पुनर्व्यवस्थित किया जा सके।
print("\nReorder levels in MultiIndex using level name...\n", multiIndex.reorder_levels(order=['student', 'rank', 'points']))
पूरा उदाहरण
import pandas as pd
# MultiIndex एक मल्टी-लेवल, या हायरार्किकल, इंडेक्स ऑब्जेक्ट है पैंडास ऑब्जेक्ट्स के लिए
# सरणियाँ बनाएं
arrays = [[2, 4, 3, 1], ['Peter', 'Chris', 'Andy', 'Jacob'], [50, 30, 40, 70]]
# "names" पैरामीटर प्रत्येक इंडेक्स स्तर के लिए नाम सेट करता है
# from_arrays() का उपयोग MultiIndex बनाने के लिए किया जाता है
multiIndex = pd.MultiIndex.from_arrays(arrays, names=('rank', 'student', 'points'))
# MultiIndex प्रदर्शित करें
print("The MultiIndex...\n", multiIndex)
# MultiIndex में स्तर प्राप्त करें
print("\nThe levels in MultiIndex...\n", multiIndex.levels)
# swaplevel() का उपयोग करके MultiIndex के स्तरों को स्वैप करें
# पहला पैरामीटर स्वैप किए जाने वाले इंडेक्स का पहला स्तर है
# दूसरा पैरामीटर स्वैप किए जाने वाले इंडेक्स का दूसरा स्तर है
print("\nSwap levels in MultiIndex...\n", multiIndex.swaplevel(0, 2))
# स्तर नाम का उपयोग करके MultiIndex के स्तरों को पुनर्क्रमित करें
# "order" पैरामीटर का उपयोग स्तर नाम को उस रूप में सेट करने के लिए किया जाता है जिससे स्तरों को पुनर्व्यवस्थित किया जा सके
print("\nReorder levels in MultiIndex using level name...\n", multiIndex.reorder_levels(order=['student', 'rank', 'points']))
आउटपुट
The MultiIndex... MultiIndex([(2, 'Peter', 50), (4, 'Chris', 30), (3, 'Andy', 40), (1, 'Jacob', 70)], names=['rank', 'student', 'points'])
The levels in MultiIndex... [[1, 2, 3, 4], ['Andy', 'Chris', 'Jacob', 'Peter'], [30, 40, 50, 70]]
Swap levels in MultiIndex... MultiIndex([('Peter', 2, 50), ('Chris', 4, 30), ('Andy', 3, 40), ('Jacob', 1, 70)], names=['student', 'rank', 'points'])
Reorder levels in MultiIndex using level name... MultiIndex([('Peter', 2, 50), ('Chris', 4, 30), ('Andy', 3, 40), ('Jacob', 1, 70)], names=['student', 'rank', 'points'])