Hola Andrés

Nooooo, no se complique, todo depende de cómo tiene los datos, pero puede ser 
tan simple como leer desde el data.frame un valor, a este sumarle 1 o restar 1, 
y agregarlo en una nueva columna en el data.frame. Sin funciones raras, solo 
con + o -. O muy complicado, a mí me llevó casi una semana encontrar el 
“bendito” contador.

Javier Marcuzzi

> El 5 jul. 2022, a las 16:43, Andrés Hirigoyen <andreshirigo...@gmail.com> 
> escribió:
> 
> Hola Javier, gracias por tu respuesta.
> Hice algo similar a lo que propones con la función lag(), que retarda los 
> valores de la variable. El tema que cada vez que lo calculo o me sobreescribe 
> o me genera una nueva columna y termino con varias columnas nuevas. 
> 
> El mar, 5 jul 2022 a la(s) 16:36, Javier Marcuzzi 
> (javier.ruben.marcu...@gmail.com <mailto:javier.ruben.marcu...@gmail.com>) 
> escribió:
> Estimado Andrés Hirigoyen
> 
> Es bastante complejo pero puede resultar simple.
> Todo depende de como trabajes con los datos, en una oportunidad en esa lista 
> me ayudaron utilizando do.call 
> 
> Yo intentaría primero modificando los datos, por ejemplo al data.frame 
> original le tomo y realizo un contador, que inicie en 0 e incremente en 1, a 
> este resultado se lo agrego en una nueva columna al mismo data.frame.
> 
> Suponiendo que en los datos, cada registro tiene una numeración que inicia en 
> 1, la columna agregada comienza en 0, por lo que puedo realizar una búsqueda 
> de una columna sobre la otra que está corrida justo un número, pero en la 
> misma fila de datos, lo que facilita el recorrido.
> 
> Es una idea, seguramente hay formas más eficientes, pero esta es simple de 
> entender.
> 
> Javier Rubén Marcuzzi
> 
> 
> > El 5 jul. 2022, a las 15:59, Andrés Hirigoyen <andreshirigo...@gmail.com 
> > <mailto:andreshirigo...@gmail.com>> escribió:
> > 
> > Buenas tardes.
> > Necesito ayuda para hacer una función o un bucle que me permita calcular
> > una nueva variable empleando el valor anterior de la misma (para la
> > observación anterior). En un dataframe de varias columnas.
> > 
> > Por ejemplo:
> > Para calcular el valor de NN para la observación 2, emplea el NN de la
> > observación 1, para el NN de la tercera emplea el NN de la segunda y
> > así hasta todas las observaciones.
> > Algo así:
> > NN(i-1)<-valor inicial
> > NNi=NN(i-1)*(NN(i-1)-Alfa)^0.263
> > NNi+1=NN(i)*(NN(i)-Alfa)^0.263...
> > 
> > NNn+1=NN(n)*(NN(n)-Alfa)^0.263
> > He intentado varias cosas pero no tuve suerte. Desde ya muchas gracias
> > -- 
> > 
> > 
> >   -
> > 
> >       [[alternative HTML version deleted]]
> > 
> > _______________________________________________
> > R-help-es mailing list
> > R-help-es@r-project.org <mailto:R-help-es@r-project.org>
> > https://stat.ethz.ch/mailman/listinfo/r-help-es 
> > <https://stat.ethz.ch/mailman/listinfo/r-help-es>
> 
> 
> 
> -- 
>  Dr. Andrés Hirigoyen
> Ing. Agr. (MSc)
>  Prof. Ciencias Biológicas
> Scholar Andrés 
> <https://scholar.google.com/citations?hl=es&user=ubpY7s4AAAAJ&view_op=list_works&sortby=pubdate>
> Researchgate Andrés <https://www.researchgate.net/profile/Andres-Hirigoyen>
>                                                   


        [[alternative HTML version deleted]]

_______________________________________________
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es

Responder a