gpt4 book ai didi

r - 将任何比例四舍五入为其最接近的 1/r 形式的算法

转载 作者:行者123 更新时间:2023-12-04 12:26:04 25 4
gpt4 key购买 nike

在计算比例 (0 < x < 1) 时,我希望将该结果 x 转换为最接近的 1/r 形式,例如

x = 0.30 转换为 1/3

而对于

x = 0.29 转换为 1/4

我一直在尝试使用来自 MASS 的 round() 和 fractions() 的不同想法,但收效甚微。

你在 R 中最简单的解决方案是什么可以使这项工作?

最佳答案

以下可能会做你想做的,返回天花板或倒数的地板(以给出更好的结果为准):

f <- function(x) ifelse(abs(1/floor(1/x) - x) < abs(1/ceiling(1/x) - x),floor(1/x),ceiling(1/x))

关于r - 将任何比例四舍五入为其最接近的 1/r 形式的算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57861824/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com