2 つのベクトルがある場合、 とx
としy
ます。
for (i in 1:length(x))
z[i] = max(x[i],y[i])
ループを使わずにこれを実行するのを手伝ってくれませんか?
2 つのベクトルがある場合、 と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、非常に簡単に確認できます。