Dire que j'ai une liste de décimalesFonction en R pour convertir un nombre décimal en une fraction avec un dénominateur spécifié
x <- c(0.55, 0.246, 0.767)
Je souhaite avoir ces convertis en fractions de 10 pour que je sois
6/10 2/10 8/10
Je suis tombé sur ce qui fonctionne très bien. Cependant, je me demandais s'il y avait une fonction qui le ferait?
frac.fun <- function(x, den){
dec <- seq(0, den)/den
nams <- paste(seq(0, den), den, sep = "/")
sapply(x, function(y) nams[which.min(abs(y - dec))])
}
frac.fun(x, 10)
#[1] "6/10" "2/10" "8/10"
Ceci est différent à d'autres questions de débordement de pile que j'ai rencontré depuis que je suis intéressé par l'existence d'un dénominateur commun pour tous mes décimaux et intéressés à déterminer ce qui est le dénominateur.
Merci!
https://stackoverflow.com/questions/5046026/print-number-as-reduced-fraction-in- connexes r – akrun
Copie possible de [Imprimer le nombre comme fraction réduite dans R] (https://stackoverflow.com/questions/5046026/print-number-as-reduced-fraction-in-r) –
'MASS :: fractions' est très probablement ce dont vous avez besoin. Cependant, si à la place vous devez arrondir à un dénominateur * spécifique *, vous pouvez également essayer 'paste0 ((x% /% (1/den)) + (x %% (1/den)> (1/2/den)), "/", den) '. – nicola