গ্রুপবাই ভ্যালু কাউন্ট করতে, পান্ডাস ডেটাফ্রেমের groupby(), size() এবং unstack() মেথড ব্যবহার করুন। প্রথমে ৩টি কলাম সহ একটি ডেটাফ্রেম তৈরি করুন:
dataFrame = pd.DataFrame({
'Product Category': ['Computer', 'Mobile Phone', 'Electronics', 'Electronics', 'Computer', 'Mobile Phone'],
'Product Name': ['Keyboard', 'Charger', 'SmartTV', 'Camera', 'Graphic Card', 'Earphone'],
'Quantity': [10, 50, 10, 20, 25, 50]})
এখন, groupby() মেথড ব্যবহার করে গ্রুপবাই ভ্যালু কাউন্ট করুন। কাউন্টের জন্য size() এবং unstack() ব্যবহার করুন। unstack() কলাম লেবেলের একটি নতুন লেভেল দেয়:
dataFrame = dataFrame.groupby(['Product Category', 'Product Name', 'Quantity']).size().unstack(fill_value=0)
উদাহরণ
নিচে সম্পূর্ণ কোড দেওয়া হলো:
import pandas as pd
# create a dataframe with 3 columns
dataFrame = pd.DataFrame({
'Product Category': ['Computer', 'Mobile Phone', 'Electronics', 'Electronics', 'Computer', 'Mobile Phone'],
'Product Name': ['Keyboard', 'Charger', 'SmartTV', 'Camera', 'Graphic Card', 'Earphone'],
'Quantity': [10, 50, 10, 20, 25, 50]})
# dataframe
print("Dataframe...\n", dataFrame)
# count and unstack
dataFrame = dataFrame.groupby(['Product Category', 'Product Name', 'Quantity']).size().unstack(fill_value=0)
print("\nResultant DataFrame...\n", dataFrame)
আউটপুট
এটি নিচের আউটপুট তৈরি করবে:
Dataframe... Product Category Product Name Quantity 0 Computer Keyboard 10 1 Mobile Phone Charger 50 2 Electronics SmartTV 10 3 Electronics Camera 20 4 Computer Graphic Card 25 5 Mobile Phone Earphone 50 Resultant DataFrame... Quantity 10 20 25 50 Product Category Product Name Computer Graphic Card 0 0 1 0 Keyboard 1 0 0 0 Electronics Camera 0 1 0 0 SmartTV 1 0 0 0 Mobile Phone Charger 0 0 0 1 Earphone 0 0 0 1