使用fractions
库 MASS 中的函数,我可以将小数转换为分数:
> fractions(.375)
[1] 3/8
但是那么我如何提取分子和分母呢?的帮助fractions
提到了一个属性“fracs”,但我似乎无法访问它。
分数的字符表示存储在属性中:
x <- fractions(0.175)
> strsplit(attr(x,"fracs"),"/")
[[1]]
[1] "7" "40"
您可以通过fracs
以下方式从您的 fraction 对象中获取属性,但它只是您的 fraction 的字符表示:
x <- fractions(.375)
attr(x, "fracs")
# [1] "3/8"
如果要访问分子和分母值,可以使用以下函数拆分字符串:
getfracs <- function(frac) {
tmp <- strsplit(attr(frac,"fracs"), "/")[[1]]
list(numerator=as.numeric(tmp[1]),denominator=as.numeric(tmp[2]))
}
您可以这样使用:
fracs <- getfracs(x)
fracs$numerator
# [1] 3
fracs$denominator
# [1] 8