You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

将Datetime格式转换为浮点型用于回归分析的方法

处理带时分秒的Datetime格式用于回归建模

核心逻辑

回归模型仅支持数值型输入,必须将包含日期+时间的datetime格式转换为连续数值特征,同时保留完整的时序信息。

具体实现方案

1. 转换为Unix时间戳(首选)

直接将datetime转为Unix时间戳——即从1970-01-01 00:00:00 UTC到目标时间的秒数(或毫秒数),完全保留时分秒信息,是连续的数值特征,适配所有回归模型。
Python中用pandas实现只需一行:

import pandas as pd
# 将datetime列转为秒级时间戳,存入新列
df['timestamp'] = pd.to_datetime(df['datetime_col']).astype('int64') // 10**9

若需毫秒级时间戳,删除// 10**9即可。

2. 拆分多维度时间特征(适配周期性规律)

如果需要模型捕捉日/周/年的温度周期规律,可以将datetime拆分为多个独立的数值特征:

  • 年、月、日、时、分、秒
  • 一年中的第几天(dayofyear)
  • 一周中的星期几(dayofweek,取值0-6)
  • 一天中的小时数(0-23)
    示例代码:
dt_series = pd.to_datetime(df['datetime_col'])
df['year'] = dt_series.dt.year
df['month'] = dt_series.dt.month
df['day'] = dt_series.dt.day
df['hour'] = dt_series.dt.hour
df['dayofyear'] = dt_series.dt.dayofyear

这种方式能让模型更好地学习到时间维度的周期性波动,比如每日固定时段的温度变化规律。

3. 关于toordinal()的说明

datetime.toordinal()仅转换日期部分为公历序数(例如2022-06-01对应738322),会丢失时分秒信息,因此不适合你的带时间的数据。儒略历与公历是两种不同历法,日常建模无需深究差异,你的数据采用公历格式,用时间戳或拆分特征即可满足需求。

Excel临时解决方案

若需在Excel中测试模型,可直接将datetime列转为数值:

选中datetime列 → 右键选择「设置单元格格式」→ 切换至「数值」类型,得到的数值(1代表1天,小数部分对应时分秒,如2022-06-01 12:00对应44729.5)可直接用于回归建模。

内容的提问来源于stack exchange,提问作者Scholar7

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 18:05:16