vectorized bu sorunun sorulmadığından çok şaşırdım, belki cevap nedenini açacaktır. Bir matrisin satırlarını bir vektör ile karşılaştırmak ve satırın her yerde vektörü döndürmek istiyorum. Aşağıdaki örneğe bakınız. Ben vectorized bir çözüm istiyorum, matrix çok yavaş döngü için çok büyük olduğu için herhangi bir işlev yok. Aynı zamanda birçok satır olduğunu varsayalım, bu yüzden vektörü tekrar etmekten kaçınmak istiyorum.Matris satırlarının R vektörüne eşit olup olmadığını kontrol edin,
set.seed(1)
M = matrix(rpois(50,5),5,10)
v = c(3 , 2 , 7 , 7 , 4 , 4 , 7 , 4 , 5, 6)
M
[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
[1,] 4 8 3 5 9 4 5 6 7 7
[2,] 4 9 3 6 3 1 5 7 6 1
[3,] 5 6 6 11 6 4 5 2 7 5
[4,] 8 6 4 4 3 8 3 6 5 6
[5,] 3 2 7 7 4 4 7 4 5 6
Çıktı olmalıdır
FALSE FALSE FALSE FALSE TRUE
yüzden bu basit mantıksal görev için başka bir külfetli olacaktır yapmak, temsilcisi() kullanmaktan kaçınmak için umuyordum. – robertevansanders
ColSums (t (M) == v) == ncol (M) 'daha iyi mi? Böyle değil "* basit mantıksal görev *" btw –
Evet Thats harika. – robertevansanders