2017-10-13 402 views
-2

``[你好,我有這個數據框,我想計算R的名義gdp的增長率,我知道如何在excel中做公式( (今年的gdp) - 去年的gdp)/(去年的gdp))* 100,R可以用什麼樣的命令來計算它? ] [1]見圖片[1]:https://i.stack.imgur.com/w7ral.png我怎樣才能找到在R

年 2004年 2006年 2009年

名義GDP 7696034.9 8690254.3 9424601.9 10520792.8 11399472.2 12256863。 6 12072541.6 13266857.9 14527336.9 15599270.7 16078959.8

+0

不清楚你在問什麼,因爲在你的DF沒有GDP – PoGibas

+1

@PoGibas其實,有被稱爲'PIB'在他的語言,西班牙語。 (在我的葡萄牙語中。) –

+0

做**不**將數據發佈爲圖片,編輯您的問題併發布'dput(df)'的輸出。 –

回答

1

您也可以從dplyr使用lag()機能的研究。它在向量中給出了以前的值。下面是一個例子

data <- data.frame(year = c(2003:2013), 
        gdp = c(7696034.9, 8690254.3, 9424601.9, 10520792.8, 
          11399472.2, 12256863.6, 12072541.6, 13266857.9, 
          14527336.9, 15599270.7, 16078959.8)) 
library(dplyr) 
growth_rate <- function(x)(x/lag(x)-1)*100 
data$growth_rate <- growth_rate(data$gdp) 
0

這也可能是最適合你熟悉的數據表,做這樣的事情:

library(data.table) 

dt_gdp <- data.table(df) 

dt_gdp[, growth_rate_of_gdp := 100 * (Producto.interno.bruto..PIB. - shift(Producto.interno.bruto..PIB.))/shift(Producto.interno.bruto..PIB.)]