• Publicidad

De dos columnas a matriz

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

De dos columnas a matriz

Notapor abraham03 » 2019-06-09 15:05 @670

Hola, buenos días. Soy un poco nuevo en Perl, y quería saber cómo le hago para convertir un archivo que tiene dos columnas asociadas:
Sintáxis: [ Descargar ] [ Ocultar ]
Using text Syntax Highlighting
Names   SampleA   Names   SampleB   Names   SamplesC
Name1        5           Name3         7          Name1         8
Name2        9           Name2         1          Name2         2
Name4        4           Name4         8          Name3         8
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4

En este caso solo son tres datos asociados (3 muestras), es decir, 6 columnas, pero podrían ser múltiples.

Lo que quiero es una matriz, con la primera columna con todos los nombres filtrados para no tener duplicados, y la primera fila con el nombre de las muestras.

Si una muestra (ejemplo SampleB) no contiene un nombre (Name1) se le agregará cero:
Sintáxis: [ Descargar ] [ Ocultar ]
Using text Syntax Highlighting
Names     SampleA     SampleB    SampleC
Name1          5                   0                 8
Name2         9                    1                 2
Name3         0                    7                8
Name4         4                    8                0
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4

¿Alguna sugerencia? Lo he intentado de varias maneras pero ¡¡¡no he podido lograr realizar la matriz!!!

¡Muchas gracias!
abraham03
Perlero nuevo
Perlero nuevo
 
Mensajes: 19
Registrado: 2016-08-05 15:52 @703

Publicidad

Re: De dos columnas a matriz

Notapor explorer » 2019-06-09 17:23 @766

Hola, abraham03.

Puedes ir leyendo por líneas, y guardar los valores en un hash de dos dimensiones. La primera dimensión es el nombre. Y la segunda dimensión es el nombre del sample.

Lo que queda después es sacar el hash de forma ordenada: haces un bucle externo para recorrer por nombre, y luego otro bucle más interno por los nombres de las muestras.

Publica algún intento tuyo, y te vamos diciendo.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España


Volver a Básico

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 11 invitados

cron