Skip to main content
 首页 » 编程设计

python之使用 Pandas 在 csv 中获取时间戳

2025年05月04日28davidwang456

我有一个 csv,我想将其读入 pandas 数据框并进行分析。一列称为“日期”,可以使用以下方法轻松转换为日期时间类型:

pd.to_datetime(df.Datum, format='%Y%m%d') 

但是该列不包含与该行关联的时间。时间(出于某种未知原因)包含在另一列的字符串中,相当于“评论”列。 “评论”列中的示例条目类似于以下字符串:

'Passnumber:123 19-05-2016 21:58 Transactie:123A12 Term:AABBC' 

我想提取“Transactie”一词之前的时间,在本例中为 21:58。这可能在 Pandas 中实现,还是我需要一个更通用的正则表达式包?

请您参考如下方法:

您可以使用 pandas string manipulation pd.Series.str 向量函数。例如,

In[1]: df = pd.DataFrame({"Date": ["20160519", "20160519"],  
"Datum": ['Passnumber:123 19-05-2016 21:58 Transactie:123A12 Term:AABBC',  
          'Passnumber:123 19-05-2016 22:58 Transactie:123A12 Term:AABBC']}) 
 
In[2]: df.Datum.astype(str).str.split(pat=' ', expand=True)[2] 
Out[2]:  
0    21:58 
1    22:58 
Name: 2, dtype: object