我使用以下代码从我的原始数据“伪”生成data.frame“df”。
> df<-pseudo %>% group_by(Drug, CLSI_interpretation) %>%
summarise(n = n()) %>%
filter(Drug %in% c('Cefepime', 'Ceftazidime', 'Piperacillin','Piperacillin/tazobactam','Imipenem','Meropenem','Doripenem','Ciprofloxacin','Levofloxacin','Gentamicin','Tobramycin','Amikacin')) %>%
mutate(freq = (n/sum(n)*100))
加上一个很长的 mapvalues 函数,它从“Drug”创建“类”列。
到目前为止一切顺利;生成如下所示的数据集:
Drug CLSI n freq class
Amikacin I 7213 4.25503047 Aminoglycosides
Amikacin R 13995 8.25580915 Aminoglycosides
Amikacin S 148309 87.48916038 Aminoglycosides
Cefepime I 13326 8.87713502 Cephalosporins
Cefepime R 9744 6.49098031 Cephalosporins
Cefepime S 127046 84.63188468 Cephalosporins
Ceftazidime I 10836 5.98558290 Cephalosporins
Ceftazidime R 15276 8.43814732 Cephalosporins
Ceftazidime S 154923 85.57626978 Cephalosporins
Ciprofloxacin I 8949 4.74295103 Fluoroquinolones
Ciprofloxacin R 31563 16.72832309 Fluoroquinolones
我正在为接下来的步骤而苦苦挣扎。我需要按“类”对这些数据进行分组,并且对于每个类总计 CLSI %in% c('I','R') 的“n”并生成一个新频率......基本上,n(I + R )/n(I+R+S) 和 n(S)/n(I+R+S) 用于每个类别。由于我需要根据对另一个变量(CLSI)的引用来总结一个变量(n),并按第三个(类)分组,因此在找出汇总函数时遇到了很多麻烦。谢谢你的帮助。