Tengo un conjunto de datos con 10 columnas. La primera columna es un identificador único. Las otras 9 columnas son atributos relacionados. Por ahora, digamos que son enteros. Si es necesario, los datos podrían pivotar fácilmente a una clave-valor.Combinación única de frecuencias
Ex:
id|attr1|attr2|attr3|...
a | 2 | 5 | 7 |...
b | 3 | 1 |null |...
c | 2 |null |null |...
d | 1 | 2 | 5 |...
e | 2 | 1 | 3 |...
estoy esencialmente en busca de las combinaciones más frecuentes de cualquier longitud con al menos un par. Así que mi salida para esto sería:
unq | frequency
1,2 | 2
1,3 | 2
1,5 | 1
2,3 | 1
2,5 | 2
2,7 | 1
1,2,3 | 1
1,2,5 | 1
2,5,7 | 1
(lo hicieron de forma manual - así que espero que no hay errores) - a la orden del pelado, no importa. 2,5,7 = 5,2,7 = 7,5,2 etc.
¿Alguna idea? Estoy abierto a diferentes herramientas. Tengo acceso a R, excel, sql server, mysql, etc.
Excel
es preferido pero no obligatorio.
¿Cuántos atributos hay y cuál es el rango de valores que puede adoptar un atributo? Un algoritmo ingenuo podría no escalar, y no sé si hay algún algoritmo manejable (pero no soy un experto en eso) – frankc
¿Puede explicar cómo obtiene de su conjunto de datos su respuesta? Estoy luchando por dar sentido a "combinaciones más frecuentes de cualquier longitud con al menos un par". –
Conseguí una mejor información. Puede tener de 1 a 9 atributos. @Richie - Básicamente para la fila D - aquí están todas las combinaciones únicas para esa fila (punto y coma delimitado): '1 1,2 1,5 2,5 1,2,5' Así los únicos que califican como "al menos un par" son '1,2 1,5 2,5 1,2,5' ¿Eso ayuda? Por favor, siéntase libre de preguntar nuevamente si no es así. Quiero ser claro en mi respuesta. – elgabito