পাইথন পান্ডাসে MultiIndex-এ শুধু একটি নির্দিষ্ট লেভেলকে (ইন্ডেক্স দিয়ে) নতুন ভ্যালু দিয়ে আপডেট করতে MultiIndex.set_levels() মেথড ব্যবহার করা হয়। level প্যারামিটার দিয়ে লেভেলের ইনডেক্স নির্দিষ্ট করা হয়।
প্রয়োজনীয় লাইব্রেরি ইম্পোর্ট করুন
import pandas as pd
মাল্টিইন্ডেক্স তৈরি করুন
arrays = [[1, 2, 3, 4], ['John', 'Tim', 'Jacob', 'Chris']]
multiIndex = pd.MultiIndex.from_arrays(arrays, names=('ranks', 'student'))
লেভেল ০-এ নতুন ভ্যালু সেট করুন
print("\nSet a new level in Multi-index...\n", multiIndex.set_levels(['p', 'q', 'r', 's'], level=0))
সম্পূর্ণ উদাহরণ
import pandas as pd
# অ্যারে তৈরি
arrays = [[1, 2, 3, 4], ['John', 'Tim', 'Jacob', 'Chris']]
# 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)
# লেভেল ০ (ranks) এ নতুন ভ্যালু সেট করুন
print("\nSet a new level in Multi-index...\n", multiIndex.set_levels(['p', 'q', 'r', 's'], level=0))
আউটপুট
The Multi-index...
MultiIndex([(1, 'John'), (2, 'Tim'), (3, 'Jacob'), (4, 'Chris')], names=['ranks', 'student'])
The levels in Multi-index...
[[1, 2, 3, 4], ['Chris', 'Jacob', 'John', 'Tim']]
Set a new level in Multi-index...
MultiIndex([('p', 'John'), ('q', 'Tim'), ('r', 'Jacob'), ('s', 'Chris')], names=['ranks', 'student'])
ব্যাখ্যা
- মূল লেভেল ০ (
ranks) এর ভ্যালুগুলো ছিল: [1, 2, 3, 4] - নতুন লিস্ট: ['p', 'q', 'r', 's'] — এটি সর্টেড ক্রমে দেওয়া হয়েছে।
- পান্ডাস কোডগুলো (codes) নতুন লেভেলের সাথে ম্যাপ করে। যেহেতু নতুন লেভেল ইতিমধ্যে সর্টেড, কোড ০->'p', ১->'q', ২->'r', ৩->'s' হয়।
- ফলাফলে প্রতিটি টাপলের প্রথম এলিমেন্ট আপডেট হয়েছে: (1,'John') -> ('p','John'), ইত্যাদি।
level প্যারামিটার
level=0: প্রথম লেভেলlevel=1: দ্বিতীয় লেভেলlevel='ranks': লেভেলের নামও ব্যবহার করা যায় (আপনার পছন্দমতো)
সতর্কতা: নতুন লেভেলের লিস্টটি অবশ্যই সর্টেড হওয়া উচিত এবং পুরনো লেভেলের সাথে একই দৈর্ঘ্যের হতে হবে, অন্যথায় অপ্রত্যাশিত ফলাফল হতে পারে।