Python Pandas根据时间序列中缺少的顺序值添加行

时间:2015-06-01 01:51:50

标签: python pandas row

我是python的新手并且正在努力操纵pandas库中的数据。我有一个像这样的熊猫数据库:

    Year  Value
0    91     1
1    93     4
2    94     7
3    95    10
4    98    13

并希望完成创建具有空值的行的缺失年份,如下所示:

    Year  Value
0    91     1
1    92     0
2    93     4
3    94     7
4    95    10
5    96     0
6    97     0
7    98    13

我如何在Python中执行此操作? (我想这样做,所以我可以绘制值而不会跳过几年)

1 个答案:

答案 0 :(得分:6)

我会创建一个新的数据框,其中包含年份作为索引,并包含您需要涵盖的整个日期范围。然后你可以简单地设置两个数据帧的值,索引将确保它们匹配正确的行(我必须使用fillna将缺失的年份设置为零,默认情况下它们将设置为{ {1}}):

NaN

最后,如果您不想将年份作为索引,则可以使用df = pd.DataFrame({'Year':[91,93,94,95,98],'Value':[1,4,7,10,13]}) df.index = df.Year df2 = pd.DataFrame({'Year':range(91,99), 'Value':0}) df2.index = df2.Year df2.Value = df.Value df2= df2.fillna(0) df2 Value Year Year 91 1 91 92 0 92 93 4 93 94 7 94 95 10 95 96 0 96 97 0 97 98 13 98

reset_index