python - 将 Pandas 时间戳转换为时间(寻找比 .apply 更快的东西)

标签 python datetime pandas

所以如果我在 pandas 中有这样的时间戳:

Timestamp('2014-11-07 00:05:00')

如何创建一个只有“时间”部分的新列?

所以我要

00:05:00

目前,我正在使用 .apply,如下所示,但这很慢(我的数据框有几百万行),我正在寻找一种更快的方法。

df['time'] = df['date_time'].apply(lambda x: x.time())

我尝试使用 .astype(time) 而不是 .apply,因为我注意到 .astype 操作可以比 .apply,但这显然不适用于时间戳(AttributeError:“Timestamp”对象没有属性“astype”)...有什么想法吗?

最佳答案

你想要 .dt.time 查看 docs有关 .dt 访问器下的更多示例。

df['date_time'].dt.time

关于python - 将 Pandas 时间戳转换为时间(寻找比 .apply 更快的东西),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33000660/

相关文章:

python - 使用正则表达式的 Amazon S3 查询

python - pandas 数据框单元格中 numpy 数组的元素平均值

python - 键错误和 MultiIndex lexsort 深度

date - ElasticSearch字段类型 “date”插入日期('Y-m-d H:i:s')

python - 如何使用 Python 对时间段内的行进行分组

python-2.7 - Pandas groupby、pivot 或 stack?将单列的组转换为多列

python - setup.py 用于依赖于 cython 和 f2py 的包

python - 如何遍历给定目录中的文件?

python - 带有 monkeypatch 的 pytest fixture 参数

PHP日期偏移量