[英]Get correct datetime object from dataframe column with random string present with date and time
我有這樣的數據框:
id Time
0 N01 Thu Sep 10 11:44:30 XYZ 2020
1 V33 Thu Sep 10 11:39:05 ABC 2020
2 N01 Thu Sep 10 11:44:30 XYZ 2020
我正在嘗試將Time
列轉換為日期Time
對象。 如果我使用:
df1['Time'] = pd.to_datetime(df1['Time'])
它正在拋出警告消息:
UnknownTimezoneWarning: tzname BRT identified but not understood. Pass `tzinfos` argument in order to correctly return a timezone-aware datetime. In a future version, this will raise an exception.
category=UnknownTimezoneWarning)
我知道pd.to_datetime()
中有一個format
參數來傳遞輸入格式。 但我不知道傳遞什么format
來繞過Time
列中間的隨機字符串。
有什么方法可以從Time
列正確獲取 datetime 對象,以便隨機字符串沒有任何影響?
如果您要刪除的字符是以下一些大寫字母,則可以使用 remove 后跟大寫字母的正則表達式函數來處理它:
將熊貓導入為 pd
data={'id':['N01','V33','N01'],
'time':['Thu Sep 10 11:44:30 XYZ 2020','Thu Sep 10 11:39:05 ABC 2020','Thu Sep 10 11:44:30 XYZ 2020']}
df = pd.DataFrame(data)
df['time']=pd.to_datetime(df['time'].str.replace('([A-Z].[A-Z])',''),format=r'%a %b %d %H:%M:%S %Y')
print(df)
結果:
id time
0 N01 2020-09-10 11:44:30
1 V33 2020-09-10 11:39:05
2 N01 2020-09-10 11:44:30
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.