R 基于另一列在列中添加值

R 基于另一列在列中添加值,r,R,从 例如,我如何添加男性的总分?我们可以使用 Gender Score male 20 female 25 male 10 female 10 如果“女性”应保持为NA library(dplyr) x %>% mutate(totalScore = sum(Score[Gender == "male"])) 对于两个“性别” x %>% mutate(totalScore = case_when(Gender =

例如,我如何添加男性的总分?

我们可以使用

Gender   Score
male     20
female   25
male     10
female   10
如果“女性”应保持为
NA

library(dplyr)     
x %>%
      mutate(totalScore = sum(Score[Gender == "male"]))
对于两个“性别”

 x %>%
      mutate(totalScore  = case_when(Gender == "male" ~ sum(Score),
         TRUE ~ NA_real_))

或在
base R

 x %>%
    group_by(Gender) %>%
    mutate(totalScore = sum(Score))
x['totalScore']我们可以使用

Gender   Score
male     20
female   25
male     10
female   10
如果“女性”应保持为
NA

library(dplyr)     
x %>%
      mutate(totalScore = sum(Score[Gender == "male"]))
对于两个“性别”

 x %>%
      mutate(totalScore  = case_when(Gender == "male" ~ sum(Score),
         TRUE ~ NA_real_))

或在
base R

 x %>%
    group_by(Gender) %>%
    mutate(totalScore = sum(Score))

x['totalScore']你想要什么样的输出,仅仅是男性价值的总和?@camille是的。使用指定的来源,我只需要计算男性得分的总和。因此,只需筛选/子集男性数据,然后计算总和得分,除非有更复杂的事情?这就是为什么看到您想要的输出会helpful@camille我想问题是如何过滤这个子集。你想要什么样的输出,仅仅是男性值的总和?@camille Yes。使用指定的来源,我只需要计算男性得分的总和。因此,只需筛选/子集男性数据,然后计算总和得分,除非有更复杂的事情?这就是为什么看到您想要的输出会helpful@camille我想问题是如何过滤该子集。使用源xx@PhilK如何将“df1”替换为“x”,使用源xx@PhilK如何将“df1”替换为“x”