Pandas:不同时间合并数据

2024-09-27 22:31:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我有两个数据帧,它们包含不同范围的时间序列数据。早开始,早结束。另外,一个是每月一次,一次是每季度一次。但是,两者的索引都是YYYY-MM-DD的形式。有没有一种使用“Python”和“Pandas”合并这些数据帧的方法?在

谢谢!在

/编辑 一套:

          DATE    GDP  GPDI     NFLS
0   1947-01-01  243.1  35.9  112.815
1   1947-04-01  246.3  34.5  111.253
2   1947-07-01  250.1  34.9  113.023
3   1947-10-01  260.3  43.2  111.440

另一个:

^{pr2}$

我想和他们一起,这样

      DATE INDPRO  M08354USM310NNBR  GDP   GPDI     NFLS
1946-11-01 13.3916              NaN  NaN    NaN     NaN  
1946-12-01 13.4712              NaN  NaN    NaN     NaN
1947-01-01 13.6332             42.8  243.1 35.9     112.815           
1947-02-01 13.7137             42.5  NaN    NaN     NaN
(...)

Tags: 数据方法编辑pandasdate时间序列nan
1条回答
网友
1楼 · 发布于 2024-09-27 22:31:12

只需执行合并-时段不同且不重叠事实上适合您:

merged = df1.merge(df2, on='DATE', how='outer')

merged
Out[54]:
         DATE  GDP_x  GPDI     NFLS   INDPRO  M08354USM310NNBR  GDP_y
0  1947-01-01  243.1  35.9  112.815  13.6332              42.8    NaN
1  1947-04-01  246.3  34.5  111.253      NaN               NaN    NaN
2  1947-07-01  250.1  34.9  113.023      NaN               NaN    NaN
3  1947-10-01  260.3  43.2  111.440      NaN               NaN    NaN
4  1946-11-01    NaN   NaN      NaN  13.3916               NaN    NaN
5  1946-12-01    NaN   NaN      NaN  13.4721               NaN    NaN
6  1947-02-01    NaN   NaN      NaN  13.7137              42.5    NaN

[7 rows x 7 columns]

你可以重命名、填充、删除错误的“GDP”列

要对合并的'DATE'列进行排序,只需调用sort

^{pr2}$

相关问题 更多 >

    热门问题