Pandas将hh:mm:ss 转换为分钟的方法

Pandas将hh:mm:ss 转换为分钟的方法

在本文中,我们将介绍如何使用Python Pandas将hh:mm:ss格式的时间转换为分钟格式。

阅读更多:Pandas 教程

准备数据

首先,我们需要准备一个包含时间列的数据集。以下是一个假数据集的示例:

ID Time
1 02:13:45
2 01:23:57
3 00:45:23
4 03:17:30

我们希望将“时间”列的值从hh:mm:ss转换为分钟。

将时间列转换为时间戳

首先,我们需要将“时间”列转换为Pandas的时间戳(Timestamp)格式。我们可以使用pd.to_datetime()方法将时间列转换为Pandas时间戳格式。

import pandas as pd

data = {'ID': [1, 2, 3, 4],
        'Time': ['02:13:45', '01:23:57', '00:45:23', '03:17:30']}
df = pd.DataFrame(data)

df['Time'] = pd.to_datetime(df['Time'], format='%H:%M:%S').dt.time
Python

这里,我们使用了format参数指定输入字符串的格式为“小时:分钟:秒”。然后,我们将返回值转换为时间格式,并将其分配回数据框的“时间”列。

将时间戳转换为分钟

现在,我们已经将“时间”列转换为时间戳格式。我们可以使用Pandas的dt属性将时间戳转换为分钟格式。以下是将时间转换为分钟的代码:

df['Time'] = df['Time'].apply(lambda x: x.hour * 60 + x.minute + x.second / 60)
Python

在这里,我们使用了一个lambda函数来计算每个时间戳的总分钟数。我们首先将小时数乘以60(将小时数转换为分钟),然后将分钟数添加到结果中,并将秒数除以60(将秒数转换为分钟)。最后,我们将计算结果分配回数据框的“时间”列。

结果

现在,我们可以查看转换后的数据集:

ID Time
1 133.75
2 83.95
3 45.383333
4 197.5

我们已经成功地将所有时间值从hh:mm:ss转换为分钟。

总结

在本文中,我们介绍了如何使用Python Pandas将hh:mm:ss格式的时间转换为分钟。我们首先将时间列转换为Pandas时间戳格式,然后使用lambda函数计算总分钟数,并将结果分配回数据框的“时间”列。希望这篇文章对你有帮助!

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册