如何解决R中的负数模
对于 -2%%5 和 -2%%7。余数是 3 和 5。我试着看看他们是如何到达 3 和 5 的
a == (a/b)*b + a%b
但我仍然没有 3 和 5。负数如何在 R 中取模?
解决方法
R 与“floored Division”方法一致。
还要考虑您的除数在哪里,例如2 %% -7
。
在你的情况下,它是这样的:
a <- -2
b <- 5
(a %/% b) * b + a %% b #== a
#> [1] -2
all.equal(a,(a %/% b) * b + a %% b)
#> [1] TRUE
这里的 %/%
是底除法,%%
是这方面的余数。即
quotient <- floor(a/b) # = a %/% b
remainder <- a - b*q # = a %% b
a == quotient*b + remainder
#> [1] TRUE
Wikipedia 对此进行了很好的讨论。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。