我的数据框中包含一些个人信息:
df = pd.DataFrame({'person':range(5), 'birth_year':range(1980, 1985)})
df
它看起来像这样:
birth_year person
0 1980 0
1 1981 1
2 1982 2
3 1983 3
4 1984 4
另一个包含年度增长数据的数据框:
growth = pd.DataFrame({'year':range(1980,2000),'growth_rate':np.random.randn(20)})
growth
所以它会是这样的:
growth_rate year
0 -0.474861 1980
1 -0.898530 1981
2 -0.730102 1982
3 -0.231560 1983
4 -0.023014 1984
...
现在我想在df
中添加一个新列,这是每个人在10岁时的增长率,因此对于0人来说,这将是1990年,对于人2来说,它将是年1991年等。增长率数据来自数据框growth
。结果数据框应如下所示:
birth_year person growth_10
0 1980 0 value_1990
1 1981 1 value_1991
2 1982 2 value_1992
3 1983 3 value_1993
4 1984 4 value_1994
我该如何管理?
PS:列的顺序似乎是按字母顺序排列的,比如人之前的birth_year和年前的growth_rate,不知道如何解决这个问题。