¿Cómo clasifico los valores según un criterio?

¿Cómo clasifico los valores según un criterio?

Tengo datos de una encuesta de 3619 personas que viven en 1000 casas. La columna MID es la identificación de miembro de cada individuo. Por ejemplo: H1M1 es el primer miembro de la primera cámara. H21M3 es el tercer miembro de la casa 21. La columna D tiene números de casa.

Quiero hacer 2 cosas.

  1. Según la edad, quiero encontrar la clasificación de los miembros de cada casa.
  2. En la siguiente columna, quiero saber si el miembro es el niño mayor de la casa. Niño es cualquier persona menor de 18 años. Se requiere salida binaria de 1 o 0.

Respuesta1

El método que se muestra a continuación resuelve el problema:

ingrese la descripción de la imagen aquí

Cómo funciona:

  • Para encontrar RANGO, fórmula en la celdaD196:

    =SUMPRODUCT((--(LEFT(A196,2)=LEFT($A$196:$A$207,2))),(--(B196<$B$196:$B$207)))+1
    
  • Una fórmula matricial (CSE) en la celdaF196paraDatos de ayuda:

    {=IFERROR(INDEX(LEFT(A$196:A$207,2),MATCH(0,COUNTIF($F$195:F195,LEFT(A$196:A$207,2)),0)),"")}
    

NÓTESE BIENTermine la fórmula conCtrl+Mayús+Entrar.

  • Fórmula en la celdaE196:

    =IF(AGGREGATE(14,4,(LEFT($A$196:$A$207,2)=F196)*$B$196:$B$207,1)=0,"",(AGGREGATE(14,4,(LEFT($A$196:$A$207,2)=F196)*$B$196:$B$207,1)))
    
  • Una fórmula matricial (CSE) en la celdaG196:

     {=IF(MIN(IF(LEFT(A$196:A$207,2)=F196,B$196:B$207,""))=0,"",MIN(IF(LEFT(A$196:A$207,2)=F196,B$196:B$207,"")))}
    

NÓTESE BIENTermine la fórmula conCtrl+Mayús+Entrar.

  • Fórmula en la celdaH196:

    =IFERROR(INDEX(A$196:A$207,MATCH(G196,B$196:B$207,0)),"")
    

NÓTESE BIEN

  • También puedes encontrarnombre del miembro mayor, usando la fórmula en la celda H196.

  • Por pulcritud puedes esconderteDatos de ayuda.

  • Ajuste las referencias de celda en la fórmula según sea necesario.

Respuesta2

Suponiendo que la MIDcolumna está ordenada por las dos primeras letras de la entrada, como se muestra:

AgeRank:    =RANK(G2,INDEX(Age,MATCH(LEFT(F2,2) & "*",MID_,0)):INDEX(Age,-1+MATCH(LEFT(F2,2)&"*",MID_,0)+COUNTIF(MID_,LEFT(F2,2)&"*")))

EldestKid:  =N(G2=AGGREGATE(14,6,1/(INDEX(Age,MATCH(LEFT(F2,2)&"*",MID_,0)):INDEX(Age,-1+MATCH(LEFT(F2,2)&"*",MID_,0)+COUNTIF(MID_,LEFT(F2,2)&"*"))<18)*INDEX(Age,MATCH(LEFT(F2,2)&"*",MID_,0)):INDEX(Age,-1+MATCH(LEFT(F2,2)&"*",MID_,0)+COUNTIF(MID_,LEFT(F2,2)&"*")),1))

ingrese la descripción de la imagen aquí

información relacionada