我有一个看起来像这样的数据框:
Dose Treatment PE
0 Gy RT .75
2 Gy RT .60
4 Gy RT .30
0 Gy P1 .52
2 Gy P1 .21
4 Gy P1 .15
我想创建一个新列(SF),方法是将PE列中的所有值除以与治疗相关的剂量“ 0 Gy”
最终显示如下:
Dose Treatment PE SF
0 Gy RT .75 1
2 Gy RT .60 .8
4 Gy RT .30 .4
0 Gy P1 .52 1
2 Gy P1 .21 .40
4 Gy P1 .15 .29
我该如何完成?可以使用dpylr获得此功能吗?
答案 0 :(得分:1)
按“处理”分组后,将“剂量”为“ 0 Gy”的“ PE”值子集,然后使用该值划分整个“ PE”列
library(tidyverse)
df %>%
group_by(Treatment) %>%
mutate(SF = PE/PE[Dose == '0 Gy'])