Hola Pablo,

Dale una mirada a lo siguiente:

# datos
d <- rnorm(300)
is.na(d) <- sample(50)
d <- matrix(sample(d), ncol = 5)
d <- data.frame(d)
d

# reemplazando NA's por ceros  -- no necesitas un for!
d[is.na(d)] <- 0
d

# en una funcion
foo <- function(datos){
datos[is.na(datos)] <- 0
 datos
}


# ejemplo  -- el mismo de antes
d <- rnorm(300)
is.na(d) <- sample(50)
d <- matrix(sample(d), ncol = 5)
d <- data.frame(d)
d

foo(d)


Ahora, si tienes varios data.frames, puedes hacer algo como:

l <- list(d1, d2, ..., dn)
procesado <- lapply(l, foo)

y, para acceder el primer data.frame, escribes

procesado[[1]]


Si estas leyendo los datos de archivos de texto (por ejemplo), entonces

toread <- paste('d', 1:n, '.txt', sep = "")
alldata <- lapply(toread, read.table)
procesados <- lapply(alldata, foo)

Para acceder los archivos ya procesados, repites el paso anterior.

Un saludo,
Jorge Ivan Velez


2011/7/1 Pablo Messina <>

> Buenas!
>
> Armé un for() para transformar los datos NA de un data frame a "Ceros".
> Eso lo pude hacer sin problemas, pero dado que me interesa replicarlo para
> varios "data.frame" me gustaría saber si existe una
> función similar al for () pero en vez de una secuencia de variables, que
> sea
> una sequencia de "data.frames".
>
> Gracias.
>
>        [[alternative HTML version deleted]]
>
>
> _______________________________________________
> R-help-es mailing list
> R-help-es@r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>
>

	[[alternative HTML version deleted]]

