如果有两个向量,说x
和y
。
for (i in 1:length(x))
z[i] = max(x[i],y[i])
能否请你帮不使用循环我来执行此?
如果有两个向量,说x
和y
。
for (i in 1:length(x))
z[i] = max(x[i],y[i])
能否请你帮不使用循环我来执行此?
假设矢量x
和y
是相同长度的, pmax
是你的函数。
z = pmax(x, y)
如果长度不同, pmax
表达会比你的循环返回不同的值,由于回收。
为了完整起见,我包括它使用的解决方案apply
:
Z = cbind(x,y)
apply(Z, 1, max)
我不知道不同的解决方案是如何在速度方面的比较,但是,@JevgenijsStrigins,你可以很容易地检查。