[R-es] Problemas con la funcion "apply"
Carlos Ortega
cof @ending from qu@lityexcellence@e@
Jue Jul 12 15:15:32 CEST 2018
Hola,
Efectivamente la función "apply" te ayudaría mucho en este caso, y no hace
falta que pases por crear la función y evaluarla como haces.
Sería algo así.
quantvector=c(0.001,0.005,0.95,0.999)
res_ults <- apply(tu_dataframe, 1, qbeta, p=quantvector, shape1 =
tu_dataframe$shape1, shape2 = tu_dataframe$shape2)
El "1" de apply está indicando el MARGIN sobre el que ha de actuar de tu
dataframe, en este caso las filas.
Entiendo que tu dataframe tienbe una columna que es el "shape1" y otra el
"shape2".
Saludos,
Carlos Ortega
www.qualityexcellence.es
El 12 de julio de 2018, 11:44, javier bueno enciso <jbuenoenciso using hotmail.com
> escribió:
> Buenos dias!
>
>
> Os escribo para ver si me podeis ayudar con un asunto en el que me he
> quedado un poco encallado.
>
>
> Lo que tengo que hacer es sacar los percentiles (0.001, 0.005, 0.95 y
> 0.999) de varias distribuciones beta, concretamente 418. Cada distribucion
> esta definida por los parametros "shape1" y "shape2". Por lo tanto tengo
> una base de datos de 418 filas y en cada una de ellas los parametros que me
> definen la distribucion beta, shape1 y shape2.
>
>
> Tengo el siguiente codigo:
>
>
> distrname="beta"
> shape1= 0.2 #ejemplo
> shape2= 0.3 #ejemplo
> quantvector=c(0.001,0.005,0.95,0.999)
> (paste("qvector=q",distrname,"(quantvector, shape1, shape2)",sep=""))
> eval(parse(text= paste("qvector=q",distrname,"(quantvector, shape1,
> shape2)",sep="") ))
> qvector
>
> Donde tengo problemas es en aplicar el anterior codigo para cada una de
> las filas de mi base de datos, especificando que shape1 es "mydata$shape1"
> y shape2 es "mydata$shape2". He pensado que quizas podria hacer una funcion
> con el anterior codigo y hacer un loop posterior para que me la aplique
> para cada una de mis filas.
>
> Sin embargo estoy convencido de que tiene que haber una manera mas directa
> utilizando la funcion "apply" de R o alguna de sus "hermanas", que
> funcionaria mejor.
>
> Me podriais ayudar? cualquier pista me seria de gran utilidad.
>
> Muchas gracias!!
>
> Javi
>
> P.D. si necesitais cualquier otra info o un ejemplo de los datos, no
> dudeis en pedirmelo.
>
>
>
>
>
> [[alternative HTML version deleted]]
>
> _______________________________________________
> R-help-es mailing list
> R-help-es using r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
>
--
Saludos,
Carlos Ortega
www.qualityexcellence.es
[[alternative HTML version deleted]]
Más información sobre la lista de distribución R-help-es