ধরুন, আপনার ডেটাফ্রেমে একটি datetime কলাম আছে এবং ডেট ও টাইম আলাদা করার ফলাফল নিচের মতো:
datetime date time 0 2020-01-01 07:00:00 2020-01-06 07:00:00 1 2020-01-02 07:00:00 2020-01-06 07:00:00 2 2020-01-03 07:00:00 2020-01-06 07:00:00 3 2020-01-04 07:00:00 2020-01-06 07:00:00 4 2020-01-05 07:00:00 2020-01-06 07:00:00 5 2020-01-06 07:00:00 2020-01-06 07:00:00
এটি সমাধানের জন্য নিচের পদ্ধতিগুলো অনুসরণ করব:
সমাধান ১
pd.date_range() ব্যবহার করে 'datetime' কলাম সহ একটি ডেটাফ্রেম ডিফাইন করুন। নিচে ডিফাইন করা হলো:
pd.DataFrame({'datetime': pd.date_range('2020-01-01 07:00', periods=6)})
ফর লুপ d ভেরিয়েবল দিয়ে df['datetime'] কলাম একে একে অ্যাক্সেস করুন।
ফর লুপ থেকে ডেট ও টাইম কনভার্ট করুন এবং df['date'] ও df['time']-এ সংরক্ষণ করুন। নিচে ডিফাইন করা হলো:
for d in df['datetime']:
df['date'] = d.date()
df['time'] = d.time()
উদাহরণ
নিচের কোডটি দেখুন আরও ভালো বুঝতে:
import pandas as pd
df = pd.DataFrame({'datetime': pd.date_range('2020-01-01 07:00', periods=6)})
print("DataFrame is:\n", df)
for d in df['datetime']:
df['date'] = d.date()
df['time'] = d.time()
print(df)
আউটপুট
DataFrame is:
datetime
0 2020-01-01 07:10:00
1 2020-01-02 07:10:00
2 2020-01-03 07:10:00
3 2020-01-04 07:10:00
4 2020-01-05 07:10:00
5 2020-01-06 07:10:00
Date-time-hour-minutes:
datetime date time
0 2020-01-01 07:10:00 2020-01-06 07:10:00
1 2020-01-02 07:10:00 2020-01-06 07:10:00
2 2020-01-03 07:10:00 2020-01-06 07:10:00
3 2020-01-04 07:10:00 2020-01-06 07:10:00
4 2020-01-05 07:10:00 2020-01-06 07:10:00
5 2020-01-06 07:10:00 2020-01-06 07:10:00
সমাধান ২
একটি ডেটাফ্রেম ডিফাইন করুন।
df['datetime']-এ pd.to_datetime() ফাংশন প্রয়োগ করুন এবং dt.date দিয়ে ডেট সিলেক্ট করে df['date']-এ সেভ করুন।
df['datetime']-এ pd.to_datetime() ফাংশন প্রয়োগ করুন এবং dt.time দিয়ে টাইম সিলেক্ট করে df['time']-এ সেভ করুন।
উদাহরণ
নিচের কোডটি দেখুন আরও ভালো বুঝতে:
import pandas as pd
df = pd.DataFrame({'datetime': pd.date_range('2020-01-01 07:10', periods=6)})
print("DataFrame is:\n", df)
df['date'] = pd.to_datetime(df['datetime']).dt.date
df['time'] = pd.to_datetime(df['datetime']).dt.time
print("Date-time-hour-minutes:\n", df)
আউটপুট
DataFrame is:
datetime
0 2020-01-01 07:10:00
1 2020-01-02 07:10:00
2 2020-01-03 07:10:00
3 2020-01-04 07:10:00
4 2020-01-05 07:10:00
5 2020-01-06 07:10:00
Date-time-hour-minutes:
datetime date time
0 2020-01-01 07:10:00 2020-01-06 07:10:00
1 2020-01-02 07:10:00 2020-01-06 07:10:00
2 2020-01-03 07:10:00 2020-01-06 07:10:00
3 2020-01-04 07:10:00 2020-01-06 07:10:00
4 2020-01-05 07:10:00 2020-01-06 07:10:00
5 2020-01-06 07:10:00 2020-01-06 07:10:00