Isidro Hidalgo Arellano
2018-03-07 12:00:09 UTC
datos
GRUPO ORDEN CLASE1 A 1 CLASE-01
2 A 2 CLASE-02
3 A 5 CLASE-03
4 B 1 CLASE-01
5 B 2 CLASE-02
6 B 5 CLASE-03
7 B 7 CLASE-04
8 C 2 CLASE-02
9 C 5 CLASE-03
10 C 7 CLASE-04
11 D 5 CLASE-03
12 D 7 CLASE-04
13 E 1 CLASE-06
14 F 2 CLASE-02
15 F 5 CLASE-03
16 F 7 CLASE-05
17 G 1 CLASE-07
clases = attr(table(datos$CLASE), "names")
grupos = attr(table(datos$GRUPO), "names")
datosFinal = datos[1,]
clases = clases[-1]
grupos = grupos[-1]
for (g in grupos){
+ selec = datos[datos$GRUPO ==g & datos$CLASE %in% clases,]grupos = attr(table(datos$GRUPO), "names")
datosFinal = datos[1,]
clases = clases[-1]
grupos = grupos[-1]
for (g in grupos){
+ selec = selec[1,]
+ clases = clases[clases != selec$CLASE]
+ datosFinal = rbind(datosFinal, selec)
+ }
datosFinal
GRUPO ORDEN CLASE1 A 1 CLASE-01
5 B 2 CLASE-02
9 C 5 CLASE-03
12 D 7 CLASE-04
13 E 1 CLASE-06
16 F 7 CLASE-05
17 G 1 CLASE-07
Básicamente es montar un cola con las clases para ir quitándole el valor que va saliendo en cada grupo.
Un saludo
Isidro Hidalgo Arellano
Observatorio del Mercado de Trabajo
Consejería de Economía, Empresas y Empleo
http://www.castillalamancha.es/
De: R-help-es [mailto:r-help-es-***@r-project.org] En nombre de jose luis via R-help-es
Enviado el: miércoles, 07 de marzo de 2018 12:01
Para: jose luis <***@yahoo.es>; Lista R. <r-help-***@r-project.org>
Asunto: Re: [R-es] Más filtrado de variables
Adjunto txt por si no se ve bien, disculpas
El Miércoles 7 de marzo de 2018 11:53, jose luis via R-help-es <r-help-***@r-project.org <mailto:r-help-***@r-project.org> > escribió:
Buenas. A ver si a alguien se le ocurre cómo hacer este filtrado. Quiero seleccionar para cada GRUPO el numero de ORDEN más pequeño (que podría ser con wich.min(ORDEN)), pero sin que se repita la CLASE, de modo que si la CLASE-01 salió en el primer GRUPO ya no salga más.
GRUPO ORDEN CLASE A 1 CLASE-01 A 2 CLASE-02 A 5 CLASE-03 B 1 CLASE-01 B 2 CLASE-02 B 5 CLASE-03 B 7 CLASE-04 C 2 CLASE-02 C 5 CLASE-03 C 7 CLASE-04 D 5 CLASE-03 D 7 CLASE-04 E 1 CLASE-06 F 2 CLASE-02 F 5 CLASE-03 F 7 CLASE-05 G 1 CLASE-07
Tendría que quedarme tal que así:
GRUPO ORDEN CLASE A 1 CLASE-01 B 2 CLASE-02 C 5 CLASE-03 D 7 CLASE-04 E 1 CLASE-06 F 7 CLASE-05 G 1 CLASE-07
Un saludo
Jose Luis
[[alternative HTML version deleted]]
_______________________________________________
R-help-es mailing list
R-help-***@r-project.org <mailto:R-help-***@r-project.org>
https://stat.ethz.ch/mailman/listinfo/r-help-es
[[alternative HTML version deleted]]