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

পাইথন পান্ডাস - DateTimeIndex কে মিনিট ফ্রিকোয়েন্সি দিয়ে রাউন্ড করুন

পাইথন পান্ডাসে DateTimeIndex-কে মিনিট ফ্রিকোয়েন্সি (minute frequency) অনুযায়ী রাউন্ড করতে DateTimeIndex.round() মেথড ব্যবহার করা হয়। মিনিট ফ্রিকোয়েন্সির জন্য freq প্যারামিটারে 'T' মান ব্যবহার করা হয়।

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

import pandas as pd

DateTimeIndex তৈরি করুন

৫টি পিরিয়ড, ৪৫ সেকেন্ড ইন্টারভ্যাল, টাইমজোন: Australia/Adelaide

datetimeindex = pd.date_range('2021-09-29 07:00', periods=5, tz='Australia/Adelaide', freq='45s')

DateTimeIndex প্রদর্শন করুন

print("DateTimeIndex...\n", datetimeindex)

মিনিট ফ্রিকোয়েন্সি দিয়ে রাউন্ড করুন

print("\nPerforming round operation with minute frequency...\n", datetimeindex.round(freq='T'))

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

import pandas as pd

# DateTimeIndex তৈরি
datetimeindex = pd.date_range('2021-09-29 07:00', periods=5, tz='Australia/Adelaide', freq='45s')

# DateTimeIndex প্রদর্শন
print("DateTimeIndex...\n", datetimeindex)

# ফ্রিকোয়েন্সি দেখুন
print("DateTimeIndex frequency...\n", datetimeindex.freq)

# মিনিট এক্সট্র্যাক্ট করুন
res = datetimeindex.minute
print("\nThe minute from DateTimeIndex...\n", res)

# মিনিট ফ্রিকোয়েন্সি দিয়ে রাউন্ড করুন
print("\nPerforming round operation with minute frequency...\n", datetimeindex.round(freq='T'))

আউটপুট

DateTimeIndex...
DatetimeIndex(['2021-09-29 07:00:00+09:30', '2021-09-29 07:00:45+09:30', '2021-09-29 07:01:30+09:30', '2021-09-29 07:02:15+09:30', '2021-09-29 07:03:00+09:30'], dtype='datetime64[ns, Australia/Adelaide]', freq='45S')
DateTimeIndex frequency...
<45 * Seconds>
The minute from DateTimeIndex...
Int64Index([0, 0, 1, 2, 3], dtype='int64')
Performing round operation with minute frequency...
DatetimeIndex(['2021-09-29 07:00:00+09:30', '2021-09-29 07:01:00+09:30', '2021-09-29 07:02:00+09:30', '2021-09-29 07:02:00+09:30', '2021-09-29 07:03:00+09:30'], dtype='datetime64[ns, Australia/Adelaide]', freq=None)

ব্যাখ্যা

  • মূল টাইমস্ট্যাম্পগুলো: 07:00:00, 07:00:45, 07:01:30, 07:02:15, 07:03:00
  • round(freq='T') দিয়ে নিকটতম মিনিটে রাউন্ড করা হয়েছে:
    • 07:00:00 -> 07:00:00 (ইতিমধ্যে মিনিট বাউন্ডারি)
    • 07:00:45 -> 07:01:00 (৪৫ সেকেন্ড > ৩০ সেকেন্ড, তাই আপ রাউন্ড)
    • 07:01:30 -> 07:02:00 (৩০ সেকেন্ড, আপ রাউন্ড)
    • 07:02:15 -> 07:02:00 (১৫ সেকেন্ড < ৩০ সেকেন্ড, ডাউন রাউন্ড)
    • 07:03:00 -> 07:03:00 (ইতিমধ্যে মিনিট বাউন্ডারি)
  • ফলাফলের freq=None কারণ রাউন্ডিংয়ের পর রেগুলার ফ্রিকোয়েন্সি নেই।

পান্ডাস ফ্রিকোয়েন্সি স্ট্রিং (Offset Aliases)

এলিয়াসঅর্থ
T বা minমিনিট
Hআওয়ার
Dদিন
Sসেকেন্ড
Mমাস এন্ড (Month End)

round() মেথড floor() (নিচের দিকে) এবং ceil() (উপরের দিকে) রাউন্ডিংও সাপোর্ট করে।

  1. পাইথন প্যান্ডাস - Timedelta দৈনিক ফ্রিকোয়েন্সি দিয়ে রাউন্ড করুন

  2. পাইথন প্যান্ডাস - Timedelta সেকেন্ড ফ্রিকোয়েন্সি দিয়ে রাউন্ড করুন

  3. পাইথন প্যান্ডাস - Timedelta মিনিট ফ্রিকোয়েন্সি দিয়ে রাউন্ড করুন

  4. পাইথন প্যান্ডাস - Timedelta ঘণ্টা ফ্রিকোয়েন্সি দিয়ে রাউন্ড করুন