将不同时间戳格式的多个数据帧堆叠到一个时间戳中
Stacking multiple dataframes together for different timestamp format into one timestamp
我有多个数据帧,每个数据帧的数据从 1 到 1440 分钟(一天)不等。每个数据帧都相似,列相同,长度相同。时间列值采用 hhmm
格式。
假设 df_A 有第一天的数据,即 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, 10), 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
我有多个数据帧,每个数据帧的数据从 1 到 1440 分钟(一天)不等。每个数据帧都相似,列相同,长度相同。时间列值采用 hhmm
格式。
假设 df_A 有第一天的数据,即 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, 10), 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