我想在现有列(例如a列)中创建一个新标签,并在另一个现有列(例如B列)的同一行中创建一个计算值。
模拟数据如下所示:
df <- data.frame(date = as.Date(c("31-Dec-2018", "31-Dec-2018", "31-Dec-2018", "30-Sep-2018", "30-Sep-2018", "30-Jun-2018", "30-Jun-2018",
"31-Mar-2018", "31-Mar-2018"), format = "%d-%b-%Y"),
metric = c("Revenue", "Profit", "Restructuring Cost", "Revenue", "Profit", "Revenue", "Profit", "Revenue", "Profit"),
value = c(100, 50, 10, 100, 50, 90, 44, 97, 60))
mutate
到目前为止,我所做的(这是错误的)是:
test <- df %>%
group_by(date) %>%
mutate(net_margin = round(value/lag(value), digits = 2))
我也不知道如何调用该度量。我上面的代码使用上一行的值,但可能并非始终如此。
所需的输出如下所示:
谢谢