[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