Я хотел разделить числа, разделенные запятыми в столбце, на другие числа.Вот входные данные, которые у меня есть
> df = data.frame (SAMPLE1.DP=c("555","651","641","717"), SAMPLE1.AD=c("555", "68,583","2,639","358,359"), SAMPLE2.DP=c("1023","930","683","1179"), SAMPLE2.AD=c("1023","0,930","683","585,594"))
> df
SAMPLE1.DP SAMPLE1.AD SAMPLE2.DP SAMPLE2.AD
1 555 555 1023 1023
2 651 68,583 930 0,930
3 641 2,639 683 683
4 717 358,359 1179 585,594
В конце я хочу добавить два новых столбца (AD / DP), которые делят значения SAMPLE1.AD по SAMPLE1.DP и SAMPLE2.AD по SAMPLE2.DP,которые представляют собой число чисел на каждой стороне запятой, например:
> end = data.frame(SAMPLE1.DP=c("555","651","641","717"),
+ SAMPLE1.AD=c("555", "68,583","204,437","358,359"),
+ SAMPLE1.AD_DP=c("1.00","0.10,0.90","0.32,0.68","0.50,0.50"),
+ SAMPLE2.DP=c("1023","930","683","1179"),
+ SAMPLE2.AD=c("1023","0,930","683","585,594"),
+ SAMPLE2.AD_DP=c("1.00","0.00,1.00","1.00","0.49,0,51"))
>end
SAMPLE1.DP SAMPLE1.AD SAMPLE1.AD_DP SAMPLE2.DP SAMPLE2.AD SAMPLE2.AD_DP
1 555 555 1.00 1023 1023 1.00
2 651 68,583 0.10,0.90 930 0,930 0.00,1.00
3 641 204,437 0.32,0.68 683 683 1.00
4 717 358,359 0.50,0.50 1179 585,594 0.49,0,51
это означает: XX YY, ZZ YY / XX, ZZ / XX AA BB, CC BB / AA, CC / AA
Если я рассматриваю значения внутри таблицы как.numeric, это не работает, так как значения разделяются запятыми ...
Есть ли у вас идеи сделать это?
Заранее спасибо за помощь