Pandas Panel数据-基于规则的值线性插值

问题描述 投票:0回答:1

我正在处理大量的财务价值面板数据。不幸的是,由于我是从数据库中获取数据的,因此信息的结果有点参差不齐(许多NaN值)。我想做的是通过线性插值来填充缺失的值。

df看起来像这样(仅以两家公司为例):

         year     ticker     tot_assets 
0        2001      ANTQ             NaN
1        2002      ANTQ             NaN
2        2003      ANTQ           14.56
3        2004      ANTQ           14.99
4        2005      ANTQ             NaN
5        1999      AMFD            2.44
6        2000      AMFD             NaN
7        2001      AMFD            1.89
8        2002      AMFD             NaN
9        2004      AMFD            3.78
10       2005      AMFD            3.82
..       ...        ...             ...

如您从示例中看到的,有时NaN从可用数据的第一年开始-因此,我不确定是插入0并从那里进行插值的最佳实践,还是不确定是否可以进行反向线性插值。

此外,从AMFD示例中可以看到,有时数据会跳过几年,因此,如果我们也考虑到这一点,那就太好了。

我能想到的最接近的东西是:

df['tot_assets'] = df.groupby(['tic'])['tot_assets'].fillna(method = 'bfill')

但是当然这不是理想的,因为它不能很好地解决我提到的问题。

此外,我还尝试使用和改编已经可用的插值文档,但是它并没有真正起作用-主要是因为我对Pandas并不熟悉。

我正在处理大量的财务价值面板数据。不幸的是,由于我是从数据库中获取数据的,因此信息的结果有点参差不齐(许多NaN值)。我想要的是...

python pandas numpy finance panel-data
1个回答
0
投票

这是我的代码。

© www.soinside.com 2019 - 2024. All rights reserved.