作者:神秘的霸气沉默_168 | 来源:互联网 | 2023-05-19 15:57
Forexample,Ihaveadataframe:例如,我有一个数据框:df<-data.frame(grpc(1,1,1,1,1,2,2,2,2,2),
For example, I have a data frame:
例如,我有一个数据框:
df <- data.frame(grp = c(1,1,1,1,1,2,2,2,2,2),
idx = c(1,2,3,4,5,1,2,3,4,5),
val = c(4,6,1,7,2,8,5,3,9,1))
I want to divide the val of each row by the val of the first row in each group. The only way I found is to introduce a new column:
我想将每行的val除以每组中第一行的val。我找到的唯一方法是引入一个新列:
df %>% group_by(grp) %>%
arrange(idx) %>%
mutate(t = ifelse(row_number(idx) == 1, val, 0)) %>%
mutate(val = val / sum(t))
Is there any simple way to do this?
有没有简单的方法来做到这一点?
1 个解决方案