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

পাইথন: প্যান্ডাস ডেটাফ্রেমকে দিন অনুযায়ী গ্রুপ করা (Group by Days)

প্যান্ডাস ডেটাফ্রেমকে নির্দিষ্ট দিনের अन्तরাল (interval) অনুযায়ী গ্রুপ করার জন্য pd.Grouper ক্লাস ব্যবহার করা হয়। freq প্যারামিটারে দিনের अन्तরাল নির্দিষ্ট করা হয় (যেমন '7D' = ৭ দিন)।

উদাহরণ: গাড়ি বিক্রির রেকর্ড ৭ দিনের अन्तরালে গ্রুপিং


import pandas as pd

df = pd.DataFrame({
    "Car": ["Audi", "Lexus", "Tesla", "Mercedes", "BMW", "Toyota", "Nissan", "Bentley", "Mustang"],
    "Date_of_Purchase": [
        pd.Timestamp("2021-06-10"),
        pd.Timestamp("2021-07-11"),
        pd.Timestamp("2021-06-25"),
        pd.Timestamp("2021-06-29"),
        pd.Timestamp("2021-03-20"),
        pd.Timestamp("2021-01-22"),
        pd.Timestamp("2021-01-06"),
        pd.Timestamp("2021-01-04"),
        pd.Timestamp("2021-05-09")
    ],
    "Reg_Price": [1000, 1400, 1100, 900, 1700, 1800, 1300, 1150, 1350]
})

print("মূল ডেটাফ্রেম:")
print(df)

# ৭ দিনের अन्तরালে গ্রুপ করে Reg_Price যোগফল
grouped = df.groupby(pd.Grouper(key='Date_of_Purchase', axis=0, freq='7D')).sum()
print("\n৭ দিনের अन्तরালে গ্রুপিং (যোগফল):")
print(grouped)

আউটপুট (অংশিক)


৭ দিনের अन्तরালে গ্রুপিং (যোগফল):
              Reg_Price
Date_of_Purchase       
2021-01-04        2450.0
2021-01-11           NaN
2021-01-18        1800.0
...
2021-06-07        1000.0
2021-06-21        1100.0
2021-06-28         900.0
2021-07-05        1400.0

ব্যাখ্যা

  • pd.Grouper(key='Date_of_Purchase', freq='7D') — ক্রয়ের তারিখ কলামকে ৭ দিনের বিন্ডে (bin) গ্রুপ করে
  • প্রতি বিনের শুরু থেকে ৭ দিন পর্যন্ত (inclusive start, exclusive end) রেকর্ডগুলো পড়ে
  • যে বিনে কোনো রেকর্ড নেই, সেখানে NaN দেখায়
  • .sum() — প্রতিটি গ্রুপের Reg_Price যোগফল বের করে

ফ্রিকোয়েন্সি স্ট্রিংস

কোডঅর্থ
'D'দিন (Daily)
'7D'৭ দিন
'W'সপ্তাহিক (সোমবার শুরু)
'M'মাসিক (মাসের শেষ দিন)
'Q'ত্রৈমাসিক
'Y'বর্ষিক

NaN হ্যান্ডলিং


# NaN হাইড বা ০ দিয়ে ফিল
grouped = grouped.fillna(0).astype(int)
# অথবা শুধু নন-নাল গ্রুপ
grouped = grouped.dropna()
  1. পাইথনে পান্ডাস ডেটাফ্রেম CSV ফাইলে লেখার পদ্ধতি

  2. পাইথনে পান্ডাস ডেটাফ্রেমকে বছরে অনুযায়ী গ্রুপ করা (Grouper ব্যবহার)

  3. পাইথনে পান্ডাস ডেটাফ্রেমের সাবসেট সিলেক্ট করা (সিঙ্গল এবং মাল্টিপল কলাম)

  4. পাইথনে পান্ডাস ডেটাফ্রেমকে বার গ্রাফে প্লট করার পদ্ধতি