কম্পিউটার টিউটোরিয়াল

পাইথন পান্ডাস - মাল্টিইন্ডেক্সকে নির্দিষ্ট লেভেলে নিম্নক্রমে সর্ট করুন

পাইথন পান্ডাসে MultiIndex-কে কোনো নির্দিষ্ট লেভেল অনুযায়ী নিম্নক্রমে (descending order) সর্ট করতে MultiIndex.sortlevel() মেথড ব্যবহার করা হয়। level প্যারামিটার দিয়ে লেভেল নির্দিষ্ট করুন এবং ascending=False সেট করুন।

প্রয়োজনীয় লাইব্রেরি ইম্পোর্ট করুন

import pandas as pd

মাল্টিইন্ডেক্স তৈরি করুন

arrays = [[2, 4, 3, 1], ['Peter', 'Chris', 'Andy', 'Jacob']]
multiIndex = pd.MultiIndex.from_arrays(arrays, names=('ranks', 'student'))

লেভেল ১-এ নিম্নক্রমে সর্ট করুন

print("\nSort MultiIndex at the requested level in descending order...\n", multiIndex.sortlevel(1, ascending=False))

সম্পূর্ণ উদাহরণ

import pandas as pd

# অ্যারে তৈরি
arrays = [[2, 4, 3, 1], ['Peter', 'Chris', 'Andy', 'Jacob']]

# MultiIndex তৈরি
multiIndex = pd.MultiIndex.from_arrays(arrays, names=('ranks', 'student'))

# MultiIndex প্রদর্শন
print("The Multi-index...\n", multiIndex)

# লেভেলগুলো দেখুন
print("\nThe levels in Multi-index...\n", multiIndex.levels)

# লেভেল ১-এ নিম্নক্রমে সর্ট করুন
print("\nSort MultiIndex at the requested level in descending order...\n", multiIndex.sortlevel(1, ascending=False))

আউটপুট

The Multi-index...
MultiIndex([(2, 'Peter'), (4, 'Chris'), (3, 'Andy'), (1, 'Jacob')], names=['ranks', 'student'])
The levels in Multi-index...
[[1, 2, 3, 4], ['Andy', 'Chris', 'Jacob', 'Peter']]
Sort MultiIndex at the requested level in descending order...
(MultiIndex([(2, 'Peter'), (1, 'Jacob'), (4, 'Chris'), (3, 'Andy')], names=['ranks', 'student']), array([0, 3, 1, 2], dtype=int64))

ব্যাখ্যা

  • sortlevel(1, ascending=False) মানে: লেভেল ১ (student) অনুযায়ী নিম্নক্রমে সর্ট করুন।
  • ফলাফলটি একটি টাপল রিটার্ন করে: (সর্টকৃত মাল্টিইন্ডেক্স, নতুন পজিশনগুলো বোঝানোর একটি অ্যারে)।
  • নিম্নক্রমে সর্ট হওয়ায় 'Peter' (P) -> 'Jacob' (J) -> 'Chris' (C) -> 'Andy' (A) ক্রমে সাজেছে।
  • আরও প্যারামিটার: sort_remaining=True (ডিফল্ট) বাকি লেভেলগুলোও সর্ট করে।

সতর্কতা: পান্ডাসের নতুন ভার্সনে sortlevel() ডিপ্রিকেটেড। বর্তমানে sort_index(level=..., ascending=...) ব্যবহার করা উচিত।

  1. অ্যারে (লিস্ট) ডিসেন্ডিং অর্ডারে সর্ট করার পাইথন প্রোগ্রাম

  2. Pandas Series সর্ট করার পদ্ধতি

  3. পাইথনে Pandas ব্যবহার করে ডেটাফ্রেমের নির্দিষ্ট কলামের সমষ্টি (sum) কীভাবে বের করবেন?

  4. Python-এ শব্দগুলো আলফাবেটিক আর্ডারে সর্ট করা