Pandas.to_datetime တွင် ဖော်မတ်သတ်မှတ်နည်း
pandas.to_datetime() လုပ်ဆောင်ချက်ကို pandas DataFrame တွင် string ကော်လံတစ်ခုမှ datetime ကော်လံအဖြစ်သို့ ပြောင်းနိုင်သည်။
ဤလုပ်ဆောင်ချက်ကိုအသုံးပြုသည့်အခါ၊ သင်သည် ၎င်းကို string မှ datetime သို့ပြောင်းသည့်အခါ အမှားအယွင်းများကိုရှောင်ရှားရန် သင့်ရက်စွဲပါသည့်ဖော်မတ်ကို သတ်မှတ်ရန် ဖော်မတ် အငြင်းအခုံကို အသုံးပြုနိုင်သည်။
ဤလုပ်ဆောင်ချက်သည် အောက်ပါအခြေခံ syntax ကိုအသုံးပြုသည်-
df[' datetime '] = pd. to_datetime (df[' my_date_column '], format=' %m%d%Y %H:%M:%S '])
ဤသည်မှာ ဖော်မတ် အငြင်းအခုံအတွက် သင်ပေးနိုင်သော အသုံးအများဆုံး ညွှန်ကြားချက်များဖြစ်သည်-
- %m : သုညပါ ဂဏန်းအဖြစ် လ (01, 02, … 12)
- %d : သုညပါ ဂဏန်းအဖြစ် လ၏နေ့ (01, 02, … 31)
- %y : ဂဏန်းအဖြစ် ရာစုဖြင့် နှစ် (2020၊ 2021၊ 2022 စသည်ဖြင့်)
- %H : သုည (00၊ 01၊ … 23) နံပါတ်အဖြစ် နာရီ (24 နာရီနာရီ)
- %I : သုည (၀၁၊ ၀၂၊ … ၁၂) ဂဏန်းအဖြစ် အချိန် (၁၂ နာရီ)
- %p : AM သို့မဟုတ် PM တစ်ခုခု
- %M : သုညဖြင့် ပြီးသော ဂဏန်းပုံစံ (00၊ 01၊ … 59) မိနစ်
- %S : သုည (00၊ 01၊ … 59) ဖြင့် ပြီးသော နံပါတ်၏ ဒုတိယပုံစံ
လမ်းညွှန်ချက်စာရင်းအပြည့်အစုံအတွက် ဤစာမျက်နှာကို ကြည့်ပါ။
အောက်ပါဥပမာသည် မတူညီသောအခြေအနေများတွင် to_datetime() လုပ်ဆောင်ချက်ရှိ ဖော်မတ် အငြင်းအခုံကို မည်သို့အသုံးပြုရမည်ကို ပြသထားသည်။
ဥပမာ- pandas.to_datetime တွင် ဖော်မတ်ကို သတ်မှတ်ပါ။
လက်လီစတိုးတစ်ခုတွင် မတူညီသောရက်စွဲများအလိုက် ရောင်းချသည့် စုစုပေါင်းရောင်းချမှုဆိုင်ရာ အချက်အလက်များပါရှိသော အောက်ပါပန်ဒါ DataFrame ရှိသည်ဆိုပါစို့။
import pandas as pd #createDataFrame df = pd. DataFrame ({' date ': ['10012023 4:15:30', '10042023 7:16:04', '10062023 9:25:00', '10142023 15:30:50', '10152023 18:15:00'], ' sales ': [100, 140, 235, 120, 250]}) #view DataFrame print (df) dirty dates 0 10012023 4:15:30 100 1 10042023 7:16:04 140 2 10062023 9:25:00 235 3 10142023 15:30:50 120 4 10152023 18:15:00 250 #view data type of each column in DataFrame print ( df.dtypes ) date object dirty int64 dtype:object
ရက်စွဲ ကော်လံသည် လက်ရှိတွင် string (ဆိုလိုသည်မှာ အရာဝတ္ထု) ကော်လံဖြစ်သည်ကို ကျွန်ုပ်တို့တွေ့မြင်နိုင်ပါသည်။
ဤကော်လံကို datetime အဖြစ်ပြောင်းရန် pandas.to_datetime() ကို အသုံးပြုရန် ကြိုးစားသည်ဆိုပါစို့။
#attempt to convert date column to datetime format
df[' date '] = pd. to_datetime (df[' date '])
ParserError: month must be in 1..12: 10012023 4:15:30 present at position 0
pandas.to_datetime() လုပ်ဆောင်ချက်သည် လက်ရှိ ကော်လံတွင်ရှိသော ရက်စွဲ နှင့် အချိန်ဖော်မတ်ကို မမှတ်မိသောကြောင့် ကျွန်ုပ်တို့သည် အမှားအယွင်းတစ်ခု လက်ခံရရှိနေပါသည်။
ကော်လံ၏ဖော်မတ်ကို သတ်မှတ်ရန် ဖော်မတ် အငြင်းအခုံကိုလည်း အသုံးပြုနိုင်သည်။
#convert date column to datetime format
df[' date '] = pd. to_datetime (df[' date '], format=' %m%d%Y %H:%M:%S ')
#view DataFrame
print (df)
dirty dates
0 2023-10-01 04:15:30 100
1 2023-10-04 07:16:04 140
2 2023-10-06 09:25:00 235
3 2023-10-14 15:30:50 120
4 2023-10-15 18:15:00 250
#view updated type of each column
print ( df.dtypes )
date datetime64[ns]
dirty int64
dtype:object
ရက်စွဲ ကော်လံကို datetime ကော်လံအဖြစ်သို့ အောင်မြင်စွာပြောင်းထားသည်ကို ကျွန်ုပ်တို့တွေ့မြင်နိုင်ပြီး ရက်စွဲ ကော်လံတွင်ပါရှိသော ဖော်မက်အတိအကျကိုသတ်မှတ်ရန် ဖော်မတ် အငြင်းအခုံကိုအသုံးပြု၍ ကျွန်ုပ်တို့တွင် မည်သည့်အမှားအယွင်းမှမရရှိခဲ့ပါ။
မှတ်ချက် – pandas to_datetime() လုပ်ဆောင်ချက်၏ စာရွက်စာတမ်းအပြည့်အစုံကို ဤနေရာတွင် ရှာတွေ့နိုင်ပါသည်။
ထပ်လောင်းအရင်းအမြစ်များ
အောက်ဖော်ပြပါ သင်ခန်းစာများသည် ပန်ဒါများတွင် အခြားဘုံလုပ်ဆောင်ချက်များကို မည်သို့လုပ်ဆောင်ရမည်ကို ရှင်းပြသည်-
Pandas တွင် ရက်စွဲအပိုင်းအခြားတစ်ခု ဖန်တီးနည်း
Pandas တွင် အချိန်တံဆိပ်ကို ရက်စွဲ/အချိန်သို့ မည်သို့ပြောင်းလဲမည်နည်း။
ပန်ဒါရှိ ရက်စွဲနှစ်ခုကြား ကွာခြားချက်ကို တွက်ချက်နည်း