[R-es] Sacar el número de vez que ocurre algo

Jesús Para Fernández j.para.fernandez en hotmail.com
Vie Sep 30 16:56:59 CEST 2016


Muchisimas gracias.

¿Como puedo tener un nivel mas alto de R? Necesitaria algun curso mas avanzado.

Gracias

Jesús


________________________________
De: Olivier Nuñez <onunez en unex.es>
Enviado: viernes, 30 de septiembre de 2016 16:47
Para: Jesús Para Fernández
Cc: r-help-es en r-project.org
Asunto: Re: [R-es] Sacar el número de vez que ocurre algo

> datos=data.frame(Referencia=rep(letters[1:4],each=4),Tiempo=.1*rep(1:4,4),Valor=rpois(16,20))
> datos
   Referencia Tiempo Valor
1           a    0.1    19
2           a    0.2    16
3           a    0.3    20
4           a    0.4    15
5           b    0.1    14
6           b    0.2    29
7           b    0.3    19
8           b    0.4    23
9           c    0.1    17
10          c    0.2    22
11          c    0.3    19
12          c    0.4    18
13          d    0.1    20
14          d    0.2    24
15          d    0.3    11
16          d    0.4    19
> max.tiempo=tapply(datos$Valor,datos$Referencia,function(x) datos$Tiempo[which.max(x)])
> max.tiempo
  a   b   c   d
0.3 0.2 0.2 0.2
>
Un saludo. Olivier


----- Mensaje original -----
De: "Jesús Para Fernández" <j.para.fernandez en hotmail.com>
Para: r-help-es en r-project.org
Enviados: Viernes, 30 de Septiembre 2016 16:27:52
Asunto: [R-es] Sacar el número de vez que ocurre algo

Buenas,


Tengo un data.frame con la siguiente esstructura:


Referencia       Tiempo       Valor

a                           1                   15

a                           2                   25

a                           3                   28

a                           4                   40

b                          1                    30

b                           2                   38

b                           3                   32

b                           4                   31

c                           1                    29

c                           2                    24

c                           3                    63

c                          4                     24


Quiero obtener como salida para cada referencia en que segundo se alcanza el valor m?ximo, es decir, qu em ede la siguiente respuesta:


a   4   40

b   2   38

c   3    63



Para ello he creado el siguiente codigo:


maximo<-tapply(datos$Valor,datos$Tiempo,function(x){c(grep(max(datos$Valor),datos$Valor),max(x)})


Pero me devuelve cosas raras.

Alguna idea??


gracias!!!

        [[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
Página de Información de R-help-es<https://stat.ethz.ch/mailman/listinfo/r-help-es>
stat.ethz.ch
Esta es una lista de correo para solicitar ayuda sobre R en español y se entiende como un complemento social a la documentación, libros, etc. disponibles sobre R ...



	[[alternative HTML version deleted]]



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