#Copiando seu exemplo, eu obtive:
> p=c(2,3,4,5,6,7,8,9)
> r=c(3,4,5)
> p==r
[1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
> which(p==r)
integer(0)
> r==p
[1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
> which(r==p)
integer(0)
#Se entendi direito vc quer saber onde p ocorre em r então usando esse teste de logica...
> p%in%r
[1] FALSE TRUE TRUE TRUE FALSE FALSE FALSE FALSE
#nas posições 2 3 e 4
> which(p%in%r)
[1] 2 3 4
#Segue alguns exemplinhos que ajudem a ver a diferença entre == e %in% caso não conheça
> a<-c(1,2,3,4)
> b<-c(1,2,0,3)
#assim vc leva em consideração o que ta escrito e a posição
> a==b
[1] TRUE TRUE FALSE FALSE
> which(a==b)
[1] 1 2
#assim o que ta escrito
> a%in%b
[1] TRUE TRUE TRUE FALSE
> which(a%in%b)
[1] 1 2 3
tenho dois vetores:p=c(2,3,4,5,6,7,8,9)r=c(3,4,5)quando usowhich(p==r) ou which(r==p)ele me retorna as posições onde r ocorre em p como fazer para saber onde p ocorre em r?obrigado (já dei um google nisso e não encontrei )
Tito Conte
_______________________________________________
R-br mailing list
R-br@listas.c3sl.ufpr.br
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.