
Tengo algunos datos sin procesar en Excel que están organizados de una manera que no es fácil de leer. Por ejemplo, para una tabla que muestra a qué usuario le gusta qué color:
A B C D E
User | Red | Green | Orange | Blue | Yellow
A 0 1 0 1 0
B 0 0 1 1 0
C 1 0 0 0 1
Entonces, al usuario A le gusta el verde y el azul, a B le gusta el naranja y el azul, y a C le gusta el rojo y el amarillo.
Esto es útil para nosotros porque puedo usarlo para calcular la frecuencia, pero también necesito los datos en un formato legible por humanos.
Me gustaría agregar una sola columna que diga los colores que eligió un usuario, como: Usuario A - Verde + Azul.
Pero parece que no puedo hacer esto con CONCATENATE(IF(A2=1, $A$1), +, IF(B2=1, $B$1))
etc. porque la IF
función no funciona internamente CONCATENATE
. Tampoco puedo agregar demasiadas columnas porque mis datos ya tienen varias columnas.
¿Existe alguna función que pueda usar para convertir estos datos binarios en una cadena limpia que pueda caber en una columna?
Respuesta1
Respuesta2
Si tienes Office 365/Excel 2016, puedes usar la TEXTJOIN
función en una fórmula matricial:
=TEXTJOIN(" ",TRUE,IF(B2:F2=1,$B$1:$F$1,""))
Dado que se trata de una fórmula matricial, debes "confirmarla" manteniendo presionado ctrl+ shiftmientras presionas enter. Si hace esto correctamente, Excel colocará llaves {...}
alrededor de la fórmula como se observa en la barra de fórmulas.