【问题标题】:How to manipulate data in dplyr across 2 different data frames in R如何在 R 中跨 2 个不同的数据帧操作 dplyr 中的数据
【发布时间】:2020-09-05 15:34:55
【问题描述】:
df1 %>%
group_by(reporter, year) %>%
summarize(TI = sum(trade_value_usd[df1 != "World"], na.rm = T) / sum(trade_value_usd[df1$partner == "World"], na.rm = T) /
(sum(df2$trade_value_usd) / sum(df3$trade_value_usd)))
我需要 df2 在此类操作中遵循相同的 df1 标准,我该怎么做?
【问题讨论】:
标签:
r
dataframe
variables
dplyr
conditional-statements
【解决方案1】:
根据您的具体任务,您可以定义一个函数并使用df1 和df2 作为参数:
manipulator <- function(data) {
output <- data %>%
group_by(reporter, year) %>%
summarize(TI = sum(trade_value_usd[data != "World"], na.rm = T) / sum(trade_value_usd[data$partner == "World"], na.rm = T) /
(sum(df2$trade_value_usd) / sum(df3$trade_value_usd)))
return(output) # or print or something else
}
manipulator(df1)
manipulator(df2)