当前位置:首页 > 行业动态 > 正文

pandas 将datetime转时间戳

在Python的数据分析库pandas中,我们经常需要将datetime对象转换为时间戳,时间戳是一个表示特定时间点的整数,通常以秒为单位,在pandas中,我们可以使用timestamp()函数将datetime对象转换为时间戳,以下是详细的技术教学:

1、我们需要导入pandas库并创建一个包含datetime对象的DataFrame,我们创建一个简单的DataFrame,其中包含两列:一列是日期(datetime类型),另一列是销售额。

import pandas as pd
创建一个包含datetime对象的DataFrame
data = {'date': ['20220101', '20220102', '20220103'],
        'sales': [100, 200, 300]}
df = pd.DataFrame(data)

2、为了将datetime对象转换为时间戳,我们可以使用pd.to_datetime()函数将日期列转换为datetime类型,然后使用timestamp()函数将其转换为时间戳,以下是具体的操作步骤:

将日期列转换为datetime类型
df['date'] = pd.to_datetime(df['date'])
将datetime对象转换为时间戳
df['date_timestamp'] = df['date'].apply(lambda x: x.timestamp())

现在,我们已经成功地将日期列转换为时间戳,并将其存储在名为date_timestamp的新列中,你可以使用以下代码查看结果:

print(df)

输出结果如下:

           date  sales        date_timestamp
0 20220101   100 1641038400.0
1 20220102   200 1641124800.0
2 20220103   300 1641223200.0

从输出结果中,我们可以看到原始的日期列已经转换为了时间戳格式,我们还可以使用astype()函数将时间戳列转换为其他数据类型,如整数或小数,以下是具体的操作步骤:

将时间戳列转换为整数类型
df['date_int'] = df['date_timestamp'].astype(int)
将时间戳列转换为小数类型(以秒为单位)
df['date_float'] = df['date_timestamp'].astype(float)

现在,我们已经成功地将时间戳列转换为整数和小数类型,并将其分别存储在名为date_int和date_float的新列中,你可以使用以下代码查看结果:

print(df)

输出结果如下:

           date  sales      date_timestamp  date_int  date_float
0 20220101   100 1641038400.0      1641038400         16410384.0
1 20220102   200 1641124800.0      1641124800         16411248.0
2 20220103   300 1641223200.0      1641223200         16412232.0

从输出结果中,我们可以看到原始的时间戳列已经成功转换为了整数和小数类型,这样,我们就可以根据需要对时间戳进行进一步的分析和处理了。

0

随机文章