[R-es] Problema con bucle for

Pedro Herrero Petisco pedroherreropetisco en gmail.com
Mar Feb 24 10:22:23 CET 2015


Puedes usar la orden is.na() que comprueba si un valor es NA o no y cuando
lo sea hacer que pase al siguiente paso del bucle. Algo así:

x<- c(24,12,45,68,NA,45)
n<-length(x)
res<-numeric()
for(i in c(1:n)){
print(i)
print(x[i])
 if (is.na(x[i])) next
 for(j in c(i+1:n)){
 if (is.na(x[j])) next
  res<- sum(x[i]*x[j])
 print(res)
 }
}
res

Espero que te sirva :-)

El 24 de febrero de 2015, 10:02, <morales en us.es> escribió:

>
>
> Hola, quiero obtener la suma del producto de los elementos de un vector
> y cuando construyo el código me aparecen una serie de NA que me impiden
> calcular la suma. ¿Alguna sugerencia?
>
> El código es el siguiente:
>
> x<- c(24,12,45,68,45)
> n<-length(x)
> res<-numeric()
> for(i in 1:n-1){
>  for(j in i+1:n){
>  res<- sum(x[i]*x[j])
>  print(res)
>  }
> }
> res
>
>
>         [[alternative HTML version deleted]]
>
> _______________________________________________
> R-help-es mailing list
> R-help-es en r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>

	[[alternative HTML version deleted]]



Más información sobre la lista de distribución R-help-es