这是我的数据集的头。
Year Months CPI UEL CLF
1 1948 1 23.68 2034 60230
2 1948 2 23.67 2328 NA
3 1948 3 23.50 2399 NA
4 1948 4 23.82 2386 60535
5 1948 5 24.01 2118 NA
6 1948 6 24.15 2214 NACPI代表“消费物价指数”,UEL代表“失业水平”,CLF代表“平民劳动力”。这些数据是1948年到2016年之间的。我每年只得到一个月、四个月、七个月和十个月的文职劳动力数字。我需要从这些变量中计算变量、通货膨胀率和失业率,但我不知道如何在RStudio中这样做。
发布于 2021-03-22 08:33:28
实际上,您的问题似乎与ECONOMICS有关,而不是在r中编程。您必须首先决定计算数据中的NAs (CLF)的策略,这可以是
与previous
相同的
此后,您可以计算r中的unemployment rate。
在计算通货膨胀时,可以使用dplyr中的滞后/铅。
如果您只想用以前的值来填充空白,这样的方法会有效的。
library(tidyverse)
df %>% fill(CLF, .direction = "down") %>%
mutate(inflation = paste0(formatC((CPI - lag(CPI))*100/lag(CPI), digits = 2), "%"),
unemployment_rate = paste0(formatC(UEL*100/CLF, digits = 2), "%"))
Year Months CPI UEL CLF inflation unemployment_rate
1 1948 1 23.68 2034 60230 NA% 3.4%
2 1948 2 23.67 2328 60230 -0.042% 3.9%
3 1948 3 23.50 2399 60230 -0.72% 4%
4 1948 4 23.82 2386 60535 1.4% 3.9%
5 1948 5 24.01 2118 60535 0.8% 3.5%
6 1948 6 24.15 2214 60535 0.58% 3.7%如果您想要的结果没有格式化为percentages
df %>% fill(CLF, .direction = "down") %>%
mutate(inflation = (CPI - lag(CPI))*100/lag(CPI),
unemployment_rate = UEL*100/CLF)
Year Months CPI UEL CLF inflation unemployment_rate
1 1948 1 23.68 2034 60230 NA 3.377055
2 1948 2 23.67 2328 60230 -0.04222973 3.865183
3 1948 3 23.50 2399 60230 -0.71820870 3.983065
4 1948 4 23.82 2386 60535 1.36170213 3.941521
5 1948 5 24.01 2118 60535 0.79764903 3.498802
6 1948 6 24.15 2214 60535 0.58309038 3.657388https://stackoverflow.com/questions/66740285
复制相似问题