仅从不均匀的 pandas 列中的时间戳中删除日期并保留时间
Removing date and keeping time only from timestamp in a uneven pandas column
我有以下数据帧结构:
我想转换列“Entr”。和“Fim”到时间 (HH:MM),格式为:HH:MM:SS。我在转换时卡住了,因为列不均匀:有时会出现“-”,有时会出现日期时间格式“DD-MM-YYYY HH:MM:SS”,有时会出现时间“HH:MM:SS”。
列:
列示例:
https://drive.google.com/file/d/1ujvPED0S1vPZ9bmCSob3vR68XwUXC2gk/view?usp=sharing
导入日期工具
dateutil.parser.parse("1900-01-01 02:32:00")
阅读 Excel 文件会留下混合数据类型的列;一些元素是 datetime.datetime
对象(例如 datetime.datetime(1900, 1, 1, 0, 10)
在 df['Fim'].iloc[2]),一些 datetime.time
(例如 datetime.time(13, 15)
在 df['Fim'].iloc[0]).据我所知,这与库 xlrd / openpyxl 如何读取文件有关 - pandas
对此无能为力。相关:.
TLDR:
将所有内容转换为字符串并删除日期。这让你有 HH:MM:SS 格式的时间。
df = pd.read_excel(filename)
df['Entr.'] = df['Entr.'].astype(str).str.split(' ').str[-1]
df['Fim'] = df['Fim'].astype(str).str.split(' ').str[-1]
df.head()
Entr. Fim
0 05:25:00 13:15:00
1 13:15:00 16:00:00
2 16:00:00 00:10:00
3 03:30:00 11:18:00
4 11:18:00 18:00:00
我有以下数据帧结构:
我想转换列“Entr”。和“Fim”到时间 (HH:MM),格式为:HH:MM:SS。我在转换时卡住了,因为列不均匀:有时会出现“-”,有时会出现日期时间格式“DD-MM-YYYY HH:MM:SS”,有时会出现时间“HH:MM:SS”。
列:
列示例:
https://drive.google.com/file/d/1ujvPED0S1vPZ9bmCSob3vR68XwUXC2gk/view?usp=sharing
导入日期工具 dateutil.parser.parse("1900-01-01 02:32:00")
阅读 Excel 文件会留下混合数据类型的列;一些元素是 datetime.datetime
对象(例如 datetime.datetime(1900, 1, 1, 0, 10)
在 df['Fim'].iloc[2]),一些 datetime.time
(例如 datetime.time(13, 15)
在 df['Fim'].iloc[0]).据我所知,这与库 xlrd / openpyxl 如何读取文件有关 - pandas
对此无能为力。相关:
TLDR:
将所有内容转换为字符串并删除日期。这让你有 HH:MM:SS 格式的时间。
df = pd.read_excel(filename)
df['Entr.'] = df['Entr.'].astype(str).str.split(' ').str[-1]
df['Fim'] = df['Fim'].astype(str).str.split(' ').str[-1]
df.head()
Entr. Fim
0 05:25:00 13:15:00
1 13:15:00 16:00:00
2 16:00:00 00:10:00
3 03:30:00 11:18:00
4 11:18:00 18:00:00