Pandas লাইব্রেরি ডেটা বিশ্লেষণের জন্য একটি অত্যন্ত শক্তিশালী টুল, যেখানে DataFrame এবং Series হল দুটি প্রধান ডেটা স্ট্রাকচার। এই স্ট্রাকচারগুলি ব্যবহার করে সহজে ডেটা প্রক্রিয়াকরণ, বিশ্লেষণ এবং ম্যানিপুলেশন করা সম্ভব। আসুন আমরা DataFrame এবং Series এর সংজ্ঞা ও ব্যবহার সম্পর্কে বিস্তারিত আলোচনা করি।
১. Series
Series হল একটি এক-মাত্রিক (1D) অ্যারে যা একই ডেটা টাইপের মান সংরক্ষণ করে। Series প্রতিটি মানের জন্য একটি ইন্ডেক্স প্রদান করে, যা প্রতিটি মানকে একটি নির্দিষ্ট অবস্থানের মাধ্যমে সংযুক্ত করে। এটি মূলত একটি এক-কোঠা তালিকা বা কলামের মতো।
বৈশিষ্ট্য:
- এক-মাত্রিক ডেটা স্ট্রাকচার।
- ইন্ডেক্স এবং ডেটার জন্য স্বতন্ত্র অ্যাক্সেস।
- এক্সেল, ডিকশনারি, তালিকা, বা NumPy অ্যারে থেকে Series তৈরি করা যায়।
উদাহরণ:
import pandas as pd
# একটি তালিকা থেকে Series তৈরি
data = [10, 20, 30, 40]
series = pd.Series(data, index=['a', 'b', 'c', 'd'])
print(series)
# ইন্ডেক্সের মাধ্যমে অ্যাক্সেস করা
print(series['b']) # Output: 20
আউটপুট:
a 10
b 20
c 30
d 40
dtype: int64
Series এর মাধ্যমে বিভিন্ন অপারেশন:
# গড়
print(series.mean()) # Output: 25.0
# যোগফল
print(series.sum()) # Output: 100
২. DataFrame
DataFrame হল একটি দুই-মাত্রিক (2D) টেবিল বা ট্যাবুলার ডেটা স্ট্রাকচার যা সারি এবং কলামের মাধ্যমে ডেটা সংরক্ষণ করে। এটি একাধিক Series ধারণ করে, যেখানে প্রতিটি কলাম একটি Series হিসাবে কাজ করে। DataFrame এর সাহায্যে বিশাল আকারের ডেটা সহজে সংরক্ষণ ও প্রক্রিয়াকরণ করা যায়।
বৈশিষ্ট্য:
- দুই-মাত্রিক টেবিল আকৃতির ডেটা স্ট্রাকচার।
- প্রতিটি কলাম একটি Series হিসেবে কাজ করে।
- এক্সেল, SQL টেবিল, ডিকশনারি, তালিকা, বা CSV থেকে DataFrame তৈরি করা যায়।
- বিভিন্ন ধরনের ডেটা টাইপ ধারণ করতে পারে।
উদাহরণ:
import pandas as pd
# ডিকশনারি থেকে DataFrame তৈরি
data = {
'Name': ['Alice', 'Bob', 'Charlie'],
'Age': [24, 27, 22],
'City': ['New York', 'Los Angeles', 'Chicago']
}
df = pd.DataFrame(data)
print(df)
আউটপুট:
Name Age City
0 Alice 24 New York
1 Bob 27 Los Angeles
2 Charlie 22 Chicago
DataFrame এর মাধ্যমে বিভিন্ন অপারেশন:
# নির্দিষ্ট কলাম এক্সেস
print(df['Name'])
# ফিল্টার করা (Age > 23)
filtered_df = df[df['Age'] > 23]
print(filtered_df)
# নতুন কলাম যোগ করা
df['Salary'] = [70000, 80000, 75000]
print(df)
আউটপুট:
Name Age City Salary
0 Alice 24 New York 70000
1 Bob 27 Los Angeles 80000
2 Charlie 22 Chicago 75000
DataFrame এবং Series এর মধ্যে পার্থক্য:
| বৈশিষ্ট্য | DataFrame | Series |
|---|---|---|
| ডাইমেনশন | দুই-মাত্রিক (2D) | এক-মাত্রিক (1D) |
| ডেটা স্ট্রাকচার | টেবিল (সারি এবং কলাম) | একক কলাম বা অ্যারে |
| ডেটা টাইপ | একাধিক ডেটা টাইপ সমর্থন করে | একই ধরনের ডেটা টাইপ |
| উদাহরণ | ছাত্রদের তালিকা | একজন ছাত্রের নম্বর তালিকা |
DataFrame এবং Series এর ব্যবহার
DataFrame এবং Series-এর সংমিশ্রণে বড় আকারের ডেটা প্রক্রিয়াকরণ, বিশ্লেষণ, ফিল্টারিং, এবং ভিজ্যুয়ালাইজেশন করা সহজ হয়।
# উদাহরণ: নির্দিষ্ট কলামের গড় বের করা
print(df['Age'].mean()) # Output: 24.33 (গড় বয়স)
# একটি নতুন DataFrame তৈরি করা একটি নির্দিষ্ট কলাম থেকে
age_series = df['Age']
print(type(age_series)) # Output: <class 'pandas.core.series.Series'>
DataFrame এবং Series Pandas এর ডেটা ম্যানিপুলেশন ক্ষমতার মূল ভিত্তি, যা বিশাল এবং জটিল ডেটাসেট সহজেই বিশ্লেষণ করতে সহায়তা করে। DataFrame এর মাধ্যমে ডেটা সংরক্ষণ ও ম্যানেজ করা সহজ এবং Series এর মাধ্যমে একক কলাম বিশ্লেষণ করা আরও কার্যকরী হয়।