如何在 R 中共享变量

How can I share out a variable in R

提问人:Captain_Crunch86 提问时间:2/15/2023 更新时间:2/15/2023 访问量:25

问:

我在 R 中的数据库操作方面遇到了问题。

我有一个遵循以下模式的数据库 df。碰巧我需要将 df$team 中的“营销”值分解为三个组成部分“tv”、“social_media”和“podcast”,就像在 df2 中一样。

我需要对预算值应用份额因子,即将营销价值分解为 3 份。此份额是特定于区域的,并遵循共享中的模式。

我可以手动执行此操作,但是数据库有数千行。我真的很感激任何关于这方面的建议。

df <- data.frame(Region   = rep(c("a","b","c","d","e"),2),
                 team   = c(rep(c("wages","marketing"),5)),
                 budget = rnorm(10,100,1)
                 )

df2 <-  data.frame(Region = c(rep("a",4), rep("d",4), rep("c",4), rep("d",4), rep("e",4)),
                   team   = c(rep(c("wages","tv","social_med","podcast"),5)),
                   budget = c(rep(c(rnorm(1,100,1),
                                    rnorm(3,33,3)))))
df2$budget <- jitter(df2$budget, factor = 1)

shares <- data.frame(
  s_a= rnorm(3,33.3,2),
  s_b= rnorm(3,33.3,3),
  s_c= rnorm(3,33.3,1),
  s_d= rnorm(3,33.3,0.5),
  s_e= rnorm(3,33.3,2)) 

我尝试创建一个新变量v <- data.frame(team = c(rep(c("wages","tv","social_med","podcast"),5)))

然后执行右连接以将 DF 中的“Wages”复制到 “Wages”,其余的将创建新行。

v2 <- right_join(df,v)

但它似乎多次复制“工资”值,而不是每个地区只复制一个。

R 加入 Tidyverse 数据操作 突变

评论

0赞 Mossa 2/15/2023
如何使用 to 制作可用于联接的键值数据帧?distinct(data, col1, col2, ...)

答: 暂无答案