ich mit einem Multi-Index (Land, Jahr) Datenrahmen in Pandas zu jeweiligen Preisen enthalten BIP-Daten in Landeswährung Einheiten arbeite, zBComputing BIP-Deflatoren über zwei Indizes
gdp
country year
AUS 2013 274865000000
2012 269562000000
2011 251727000000
2010 233604000000
2009 221002000000
2008 202260000000
USA 2013 2550000000000
... ...
Ich mag wäre erstellen neue Spalte des BIP-Deflators mit 2010 als Basisjahr enthält, zB
gdp gdpdef
country year
AUS 2013 274865000000 1.18
2012 269562000000 1.15
2011 251727000000 1.08
2010 233604000000 1.00
2009 221002000000 0.95
2008 202260000000 0.87
USA 2013 2550000000000 1.01
... ... ...
2010 2520000000000 1
.... ... ...
Wo, zu explizit zu sein, wobei jeder Eintrag in „gdpdef“ durch das Verhältnis des BIP gegeben i für Land im Jahr t zum BIP für Land ich im Jahr 2010.
Für ein einzelnes Land mit dem einzigen Index (Jahr) Ich bin in der Lage, dieses Ziel mit erreichen:
base_year = df.get_value(2010, "gdp")
df["gdpdef"] = df["gdp"].div(base_year)
Jedoch habe ich über die beiden Indizes um diesen Vorgang viel Mühe, habe replizierende (Land, Jahr) in einer prägnanten Art und Weise. Jede Hilfe zu diesem Zweck wird sehr geschätzt.
Tausend Dank Jezrael, sehr informative Antwort. –
@ Ff.Graeme - Froh kann helfen! – jezrael