[R-es] Duda loop R

Carlos J. Gil Bellosta cgb en datanalytics.com
Lun Oct 29 01:16:25 CET 2012


Hola, ¿qué tal?

Te recomendaría que construyeses una función que dados Posit y cr de data,

1) recorriese rwind buscando las filas que cumplen la condición
2) devolviese el valor adecuado.

Luego correría esa función sobre las filas de data (con apply).

En esencia, trata de resolver el problema sólo para una fila de data.
Cuando lo tengas, mete tu solución en una función y córrela sobre
todas las filas.

Un saludo,

Carlos J. Gil Bellosta
http://www.datanalytics.com

El día 29 de octubre de 2012 00:34, Juan Manuel Herrero
<jmherrero en um.es> escribió:
> Hola,
> He estado dándole vueltas a un problema, probando varios loops pero no
> consigo resolverlo (todavía soy muy novato)
>
> Tengo dos data.frames:
>
>> head (data)
> Posit   cr
> 553192   1
> 643315   1
> 659754   1
> 697944   1
> 1260095  1
> 1566960  1
> 553176   2
> 643315   2
> ....
>
>> head (rwind)
> ssc Bin position1 position2
> 1   0    342481   1166552
> 1   1   1166552   2010349
> 1   2   2010349   3008501
> 1   3   3008501   4022389
> 1   4   4022389   5008585
> 1   5   5008585   6010365
> 2   0    442481   1106552
> 2   1   1106552   2110354
> .....
>
> Necesito que cuando el valor de la columna data$Posit >= rwind$position1 &
> data$Posit <  rwind$position2 & rwind$ssc == data$cr
> se genere una columna data$bin con el valor correcto rwind$Bin.
>
> El resultado debería ser algo así:
>
>     Posit    cr    bin
> 553192   1    0
> 643315   1    0
> 659754   1    0
> 697944   1    0
> 1260095  1    1
> 1566960  1    1
>
> Estaría muy agradecido si me dierais alguna idea para resolverlo.
>
> Un saludo,
> Juanma.
>
> _______________________________________________
> R-help-es mailing list
> R-help-es en r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es



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