tipo eu tenho essa matriz em um arquivo
15
24 29
8 15 28
uma matriz diagonal
dai tenho que deixa-la assim
0 , 15 , 24 , 8
15 , 0 , 29 , 15
24 , 29 , 0 , 28
8 . 15 , 28 , 0
tipo o 0 eh a diagonal principal
tipo eu tenho essa matriz em um arquivo
15
24 29
8 15 28
uma matriz diagonal
dai tenho que deixa-la assim
0 , 15 , 24 , 8
15 , 0 , 29 , 15
24 , 29 , 0 , 28
8 . 15 , 28 , 0
tipo o 0 eh a diagonal principal
cara, juro pra você que não entendo nada do que vc fala!!
essa ultima coisa ai boiei totalmente, pra que você quer montar uma matriz??? e quais parametros dela??
o que você que lah no começo é uma pura orientação a objetos, e isso não é facil
tera que determinar cada uma das familias, pra poder orientar
algo do tipo
agora você ja tem queCódigo PHP:my @familias = <DATA>;
__DATA__
A
B
C
D
e assim vaiCódigo PHP:$familias[0] = "A";
$familias[1] = "B";
entenda que esse formato de arquivo tem que ser quebrado
quando você fizerCódigo PHP:15
24 29
8 15 28
você teraCódigo PHP:my @distancia = <DATA>
__DATA__
15
24 29
8 15 28
dai você pode ate fazer algo do tipo BEM POG como isso, mas da certoCódigo PHP:$distancia[0] = "15";
$distancia[1] = "24 29";
$distancia[2] = "8 15 28";
eu penso que seja algo assimCódigo PHP:my $num = @distancia;
for (my $i = 0; $i <= $num -1; $i++){ #incrementa
my @linha = split (/ /, $distancia[$i]);
sub rotina {
#não sei como, ainda não pensei
#mas tente associar o @linha com o @familia, aqui
#de forma bem planejada
#para dar certo
#é apenas questão de posição
#você tah trabalhando com posição de dados, aqui
}
print sub
}
So respondo se a consiencia perguntar!!!
Não Respondo MP's de perguntas, as faça em um tópico!
Perl User, Bioinformatcs Programmer!
ó vo explica de uma forma mais clara, ve se vc entende, eh assim
>A
>B
>C
>D
> h 4
15
24 29
8 15 28
tudo que estiver em > são familias de RNA (exceto a linha que contem > h 4, que eh o numero de estruturas que tem)
os numero logo abaixo (eh uma matriz que representa as distancias entre essas estruturas, e para mim obter essas distancias eu usei o RNAdistance que me gerou saida acima)...
a primeira linha da matriz mostra a distancia de
B-A = 15 , pois a comparação começa na linha 2
C-A = 24 ,
C-B = 29
D-A = 8
D-B = 15
D-C = 28
entende como faz o processo de distancia dos termos? observa que nessa matriz eu tenho informações da distancia de todos contra - todos, mas nao consigo usar o perl para fazer isso...tipo se eu conseguisse uma forma de montar um matriz igual com o outro lado prenchido seria mais fácil, tipo assim:
0 15 24 8
15 0 29 1524 29 0 28
8 15 28 0
entendem? rs... tipo o 0 eh a distancia distancia entre o mesmo termo, onde sendo o mesmo termo eh 0..
tipo como faço para criar essa matriz?
cara, pois é, acho que esse zero ai não seria necessario
não precisa montar uma matriz diagonal...
é uma questão de associação dos termo
primeiro você temque fazer
eu ainda nãosei bem como fazer isso, mas você entende que aCódigo PHP:$familia[1] = $distancia[0];
#entendeu?? $familia[1] no meu outro post é o B
familia B é dona de tudo que tiver na primeira linha
depois usa-se um split e quebra tudo que estiver separado por um espaço na primeira linha
assim você tem acesso a todas colunas
agora simCódigo PHP:my @colunas = split (/ /, $familia[1]);
logoCódigo PHP:$colunas[0] = $familia[0];
[PHP]
if (($familia[$i] != $familia[$i++]) && ($distancia[$i-1])){
print $coluna[$i++];
}
talvez eu tenha defecado pelos dedos, mas se vc pelomenos entendeu a logica é um grande passo
pq eu n entendi a logica... hahaha
So respondo se a consiencia perguntar!!!
Não Respondo MP's de perguntas, as faça em um tópico!
Perl User, Bioinformatcs Programmer!