我将创建一个以Year为索引的新数据框,其中包括您需要涵盖的整个日期范围。然后,您可以简单地跨两个数据框设置值,索引将确保它们匹配正确的行(我不得不使用fillna将缺失的年份设置为零,默认情况下,它们将设置为
NaN):
df = pd.Dataframe({'Year':[91,93,94,95,98],'Value':[1,4,7,10,13]})df.index = df.Yeardf2 = pd.Dataframe({'Year':range(91,99), 'Value':0})df2.index = df2.Yeardf2.Value = df.Valuedf2= df2.fillna(0)df2 Value YearYear 91 1 9192 0 9293 4 9394 7 9495 10 9596 0 9697 0 9798 13 98
最后,
reset_index如果您不想将Year作为索引,则可以使用:
df2.drop('Year',1).reset_index() Year Value0 91 11 92 02 93 43 94 74 95 105 96 06 97 07 98 13
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)