Bu yüzden, R
'da, genellikle değerlendirilecek bir for döngüsü kullanmak zorunda olan değerlerin iki ızgarası üzerinden hesaplamaları basitleştirmek için outer()
komutunu kullanabilirsiniz. herhangi i
için x[i]*x[y]
çıktısı sayıl olduğundan Örneğin,Çıktı bir satır vektörü olduğunda dış komut
x = 1:10
y = 1:10
f = function(x,y){
ans = x*y
return(ans)
}
outer(x,y,f)
Şimdi, bu çalışır. Ancak, x*y
çıktısı bir vektör ise, outer()
komutunu benzer şekilde uygulayabilirsiniz?
x = 1:10
y = 1:10
f = function(x,y){
ans = x*y+c(1,1,1)
return(ans)
}
outer(x,y,f)
Bu örnekler tür önemsiz ama ben var bir sorun üzerinde çalışıyorum:
Örneğinaşağıdaki gibi bir şey için vektörler olan tüm çıkışlar hesaplamak için outer()
gibi hızlı bir yolu vardır Her olası kombinasyonu tamamlamak için çok fazla sayıda döngü yapmak zorunda olan üç gömülü for döngüsü.
kodunuz bir hata. "* +" Ile ne demek istiyorsun? – MichaelChirico
Beklenen çıktınız nedir? – MichaelChirico
@MichaelChirico üzgünüm evet, kopyalayıp yapıştırdığımda yazım hatası oldu. Şimdi sabit. – RustyStatistician