【发布时间】:2020-04-28 23:40:55
【问题描述】:
我正在用 Python 将不同公司的月度数据与季度财务数据合并。每只股票的某些列都有月度数据,而其他列只有季度数据。下面是一个示例数据框。
import numpy as np
import pandas as pd
raw_data = {'gvkey': [1004, 1004, 1004, 1004, 1004, 1004, 1045, 1045, 1045, 1045, 1045, 1045,],
'date': ['2018-08-31', '2018-09-30', '2018-10-31', '2018-11-30', '2018-12-31', '2019-01-31', '2018-08-31', '2018-09-30', '2018-10-31', '2018-11-30', '2018-12-31', '2019-01-31'],
'trt1m': [-1.5609, 2.6141, -0.4907, -8.1757, -14.5342, 1.1114, -0.2488, -14.939, 5.6241, 8.5137, 2.3091, -7.335],
'epsfxq': [np.NaN, 0.52, np.NaN, np.NaN, .54, np.NaN, np.NaN, -.28, np.NaN, np.NaN, -3.29, np.NaN],
'roa': [0.079, 0.079, 0.079, 0.082, 0.082, 0.082, .104, .104, .104, .090, .090, .090]}
df = pd.DataFrame(raw_data, columns = ['gvkey', 'date', 'trt1m', 'epsfxq', 'roa'])
df.head(12)
我正在尝试为我的数据框中的 NaN 值估算缺失的数据,但是,当我按日期或 gvkey(读取:StockID)分组时,我可以进行前向填充(ffill)或后向填充成功填充(bfill)到缺失值,但是当我这样做时我丢失了日期和 gvkey 列。
对于如何为多个组(在此示例中按日期和 gvkey 分组)估算这些缺失值有任何建议吗?我将非常感谢您提供的任何建议。
谢谢
【问题讨论】: