微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

将不同时间戳格式的多个数据帧堆叠成一个时间戳

如何解决将不同时间戳格式的多个数据帧堆叠成一个时间戳

我有多个数据帧,每个数据帧的数据从 1 分钟到 1440 分钟(一天)不等。每个数据帧都相似,列和长度相同。时间列值采用 hhmm 格式。 假设 df_A 有第 1 天的数据,即 2021-05-06 看起来像这样。

>df_A
timestamp    col1   col2.....  col80
0
1
2
.
.
.
2359

第二天的数据在df_B里面也是一样的。日期是 2021-05-07

>df_B
timestamp    col1   col2.....  col80
0
1
2
.
.
.
2359

我怎样才能将它们一个一个地堆叠在一起并创建一个数据框,同时用一列具有 YYYYMMDD HH:mm 格式的值来标识每一行。看起来像这样:

>df
timestamp      col1    col2.....  col80
20210506 0000
20210506 0001
.
.
20210506 2359
20210507 0000
.
.
20210507 2359

在处理多个数据帧时如何实现这一点?

解决方法

df_A = pd.DataFrame(range(0,10),columns=['timestamp'])
df_B = pd.DataFrame(range(0,columns=['timestamp'])


df_A['date'] = pd.to_datetime('2021-05-06 ' + 
                              df_A['timestamp'].astype(str).str.zfill(4),format='%Y-%m-%d %H%M')

df_B['date'] = pd.to_datetime('2021-05-07 ' + 
                              df_A['timestamp'].astype(str).str.zfill(4),format='%Y-%m-%d %H%M')

df_final = pd.concat([df_A,df_B])

df_final
    timestamp   date
0   0   2021-05-06 00:00:00
1   1   2021-05-06 00:01:00
2   2   2021-05-06 00:02:00
3   3   2021-05-06 00:03:00
4   4   2021-05-06 00:04:00
5   5   2021-05-06 00:05:00
6   6   2021-05-06 00:06:00
7   7   2021-05-06 00:07:00
8   8   2021-05-06 00:08:00
9   9   2021-05-06 00:09:00
0   0   2021-05-07 00:00:00
1   1   2021-05-07 00:01:00
2   2   2021-05-07 00:02:00
3   3   2021-05-07 00:03:00
4   4   2021-05-07 00:04:00
5   5   2021-05-07 00:05:00
6   6   2021-05-07 00:06:00
7   7   2021-05-07 00:07:00
8   8   2021-05-07 00:08:00
9   9   2021-05-07 00:09:00

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。