R中使用的双倍百分比(%%
)是什么?
从使用它看起来好像它将前面的数字除以它背后的数字尽可能多次并且返回左边的值。这是对的吗?
出于好奇,这什么时候有用?
答案 0 :(得分:18)
"算术运算符"帮助页面(您可以通过?"%%"
进行说明)
'%%'表示'x mod y'
只有在您完成了足够的编程后才知道这是指modular division,即x
整数除y
并返回余数时才有用。这在许多很多很多应用程序中都很有用。例如(来自评论中的@GavinSimpson),%%
非常有用,如果您正在运行循环并希望每隔n次迭代在屏幕上打印某种进度指示器(例如,使用if (i %% 10 != 0) { #do something}
来执行某些操作第10次迭代)。
由于%%
也适用于R中的浮点数,我只是挖出了一个示例,其中if (any(wts %% 1 != 0))
用于测试任何wts
值的位置非整数。
答案 1 :(得分:5)
答案 2 :(得分:1)
%%
返回余数
例如:
s=c(1,8,10,4,6)
d=c(3,5,8,9,2)
x=s%%d
x
[1] 1 3 2 4 0