Timedelta ကို pandas တွင် int သို့ ပြောင်းလဲနည်း (ဥပမာများနှင့်အတူ)


timedelta ကော်လံကို pandas DataFrame ရှိ ကိန်းပြည့်ကော်လံအဖြစ်သို့ ပြောင်းလဲရန် အောက်ပါနည်းလမ်းများကို သင်သုံးနိုင်သည်။

နည်းလမ်း 1- Timedelta ကို ကိန်းပြည့် (နေ့များ) သို့ ပြောင်းပါ

 df[' days '] = df[' timedelta_column ']. dt . days

နည်းလမ်း 2- Timedelta ကို ကိန်းပြည့် (နာရီ) သို့ ပြောင်းပါ

 df[' hours '] = df[' timedelta_column '] / pd. Timedelta (hours= 1 )

နည်းလမ်း 3- Timedelta ကို ကိန်းပြည့် (မိနစ်) သို့ ပြောင်းပါ

 df[' minutes '] = df[' timedelta_column '] / pd. Timedelta (minutes= 1 )

အောက်ဖော်ပြပါ ဥပမာသည် အောက်ပါ pandas DataFrame ဖြင့် လက်တွေ့တွင် နည်းလမ်းတစ်ခုစီကို အသုံးပြုနည်းကို ပြသသည်-

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' promotion ': ['A', 'B', 'C', 'D'],
                   ' start ': ['2021-10-04 13:29:00', '2021-10-07 12:30:00',
                             '2021-10-15 04:20:00', '2021-10-18 15:45:03'],
                   ' end ': ['2021-10-08 11:29:06', '2021-10-15 10:30:07',
                             '2021-10-29 05:50:15', '2021-10-22 15:40:03']})

#convert start date and end date columns to datetime
df[' start '] = pd. to_datetime (df[' start '])
df[' end '] = pd. to_datetime (df[' end '])

#create new column that contains time delta between start and end
df[' duration '] = df[' end '] - df[' start ']

#view DataFrame
print (df)

  promotion start end duration
0 A 2021-10-04 13:29:00 2021-10-08 11:29:06 3 days 22:00:06
1 B 2021-10-07 12:30:00 2021-10-15 10:30:07 7 days 22:00:07
2 C 2021-10-15 04:20:00 2021-10-29 05:50:15 14 days 01:30:15
3 D 2021-10-18 15:45:03 2021-10-22 15:40:03 3 days 23:55:00

ဥပမာ 1- Timedelta ကို ကိန်းပြည့် (ရက်) သို့ ပြောင်းပါ

အောက်ပါကုဒ်သည် ကြာချိန် ကော်လံရှိ timedelta ဟုခေါ်သော ရက်များ ဟုခေါ်သော ကော်လံအသစ်တစ်ခုဖန်တီးနည်းကို ပြသထားသည့် အချိန်ကာလကော်လံရှိ ကိန်းပြည့်တန်ဖိုးအဖြစ် timedelta ကော်လံရှိ ရက်အရေအတွက်ကို ကိုယ်စားပြုသည်။

 #create new column that converts timedelta into integer number of days
df[' days '] = df[' duration ']. dt . days

#view updated DataFrame
print (df)

  promotion start end duration days
0 A 2021-10-04 13:29:00 2021-10-08 11:29:06 3 days 22:00:06 3
1 B 2021-10-07 12:30:00 2021-10-15 10:30:07 7 days 22:00:07 7
2 C 2021-10-15 04:20:00 2021-10-29 05:50:15 14 days 01:30:15 14
3 D 2021-10-18 15:45:03 2021-10-22 15:40:03 3 days 23:55:00 3

ဤကော်လံအသစ်၏ ဒေတာအမျိုးအစားကို စစ်ဆေးရန် dtype ကို အသုံးပြုနိုင်ပါသည်။

 #check data type
df. days . dtype

dtype('int64')

ကော်လံအသစ်သည် ကိန်းပြည့်ဖြစ်သည်။

ဥပမာ 2- Timedelta ကို ကိန်းပြည့် (နာရီ) သို့ ပြောင်းပါ

အောက်ပါကုဒ်သည် အချိန်ကာလ ကော်လံရှိ timedelta ကို timedelta ကော်လံရှိ နာရီစုစုပေါင်းအရေအတွက်ကိုကိုယ်စားပြုသည့် ကိန်းဂဏာန်းတန်ဖိုးအဖြစ်သို့ ပြောင်းပေးသည့် နာရီ ဟုခေါ်သော ကော်လံအသစ်ကို ဖန်တီးနည်းကို ဖော်ပြသည်။

 #create new column that converts timedelta into total number of hours
df[' hours '] = df[' duration '] / pd. Timedelta (hours= 1 )

#view updated DataFrame
print (df)

  promotion start end duration hours
0 A 2021-10-04 13:29:00 2021-10-08 11:29:06 3 days 22:00:06 94.001667  
1 B 2021-10-07 12:30:00 2021-10-15 10:30:07 7 days 22:00:07 190.001944
2 C 2021-10-15 04:20:00 2021-10-29 05:50:15 14 days 01:30:15 337.504167
3 D 2021-10-18 15:45:03 2021-10-22 15:40:03 3 days 23:55:00 95.916667

ဤကော်လံအသစ်၏ ဒေတာအမျိုးအစားကို စစ်ဆေးရန် dtype ကို အသုံးပြုနိုင်ပါသည်။

 #check data type
df. hours . dtype

dtype('float64')

ကော်လံအသစ်သည် float ဖြစ်သည်။

ဥပမာ 3- Timedelta ကို ကိန်းပြည့် (မိနစ်) သို့ ပြောင်းပါ

အောက်ပါ ကုဒ်သည် အချိန်ကာလ ကော်လံရှိ timedelta ဟုခေါ်သော ကော်လံ အသစ်ကို ဖန်တီးနည်းကို ပြသပြီး timedelta ကော်လံရှိ စုစုပေါင်း မိနစ်အရေအတွက်ကို ကိုယ်စားပြုသည့် ဂဏန်းတန်ဖိုးအဖြစ် ပြောင်းလဲပေးပါသည်။

 #create new column that converts timedelta into total number of minutes
df[' minutes '] = df[' duration '] / pd. Timedelta (minutes= 1 )

#view updated DataFrame
print (df)

  promotion start end duration minutes
0 A 2021-10-04 13:29:00 2021-10-08 11:29:06 3 days 22:00:06 5640.100000  
1 B 2021-10-07 12:30:00 2021-10-15 10:30:07 7 days 22:00:07 11400.116667
2 C 2021-10-15 04:20:00 2021-10-29 05:50:15 14 days 01:30:15 20250.250000
3 D 2021-10-18 15:45:03 2021-10-22 15:40:03 3 days 23:55:00 5755.000000

ဤကော်လံအသစ်၏ ဒေတာအမျိုးအစားကို စစ်ဆေးရန် dtype ကို အသုံးပြုနိုင်ပါသည်။

 #check datatype
df. minutes . dtype

dtype('float64')

ကော်လံအသစ်သည် float ဖြစ်သည်။

ထပ်လောင်းအရင်းအမြစ်များ

အောက်ဖော်ပြပါ သင်ခန်းစာများသည် ပန်ဒါများတွင် အခြားဘုံအလုပ်များကို မည်သို့လုပ်ဆောင်ရမည်ကို ရှင်းပြသည်-

Pandas ရှိ ကော်လံများကို DateTime သို့ ပြောင်းလဲနည်း
Pandas တွင် DateTime ကို ရက်စွဲသို့ မည်သို့ပြောင်းလဲမည်နည်း။
Pandas တွင် ရက်စွဲမှ လကို မည်သို့ထုတ်ယူမည်နည်း။

မှတ်ချက်တစ်ခုထည့်ပါ။

သင့် email လိပ်စာကို ဖော်ပြမည် မဟုတ်ပါ။ လိုအပ်သော ကွက်လပ်များကို * ဖြင့်မှတ်သားထားသည်