首页 > 解决方案 > 如何在 Pandas python 中插入不均匀间隔的年份?

问题描述

我正在尝试用一些不均匀的年份插入一个 DataFrame,orig_years = [2020, 2022, 2030, 2038, 2040]比如given_years = [2020, 2025, 2030, 2035, 2040, 2045, 2050].

这是我正在处理的一个虚拟 DataFrame:

df:
Out[344]: 
      FUEL  YEAR  VALUE
0      gas  2022   1000
1      gas  2030    500
2      oil  2020      5
3      oil  2040     10
4  biomass  2030    100
5  biomass  2038    100

年份不均,我该如何插入它们?我会很感激任何想法。

预期输出:如您所见,这是interpolate(limit_direction = 'both')

REGION FUEL YEAR VALUE 0 DE gas 2020 1000.00 1 DE oil 2020 5.00 2 FR biomass 2020 100.00 4 DE gas 2025 750.00 5 DE oil 2025 6.25 6 FR biomass 2025 100.00 .. ... ... ... ... 10 FR biomass 2035 100.00 11 DE oil 2035 8.75 12 DE gas 2035 500.00 14 DE gas 2040 500.00 15 FR biomass 2040 100.00 16 DE oil 2040 10.00

谢谢你。

标签: python-3.xpandasinterpolation

解决方案


您可以使用np.arange

>>> df.YEAR = np.arange(2020, 2020 + (5*len(df)), 5)
>>> df
      FUEL  YEAR  VALUE
0      gas  2020   1000
1      gas  2025    500
2      oil  2030      5
3      oil  2035     10
4  biomass  2040    100
5  biomass  2045    100

推荐阅读