Gostaria de criar um shell script que coletassem dados de pockets de cada Proteína

1. Gostaria de criar um shell script que coletassem dados de pockets de cada Proteína

Matheus  Bernardes Costa do Nascimento
matbnas

(usa Ubuntu)

Enviado em 22/09/2015 - 13:28h

Olá. Gostaria de coletar as 6 primeiras linhas do pocket que tem maior druggability score. Nessa imagem por exemplo, o maior druggability score é do pocket 2.
Obs¹: Esses dados estão num arquivo txt.
Pocket 1 :
Score : 34.202
Druggability Score : 0.215
Number of Alpha Spheres : 263
Total SASA : 848.733
Polar SASA : 391.042
Apolar SASA : 457.691
Volume : 1891.178
Mean local hydrophobic density : 40.521
Mean alpha sphere radius : 3.770
Mean alp. sph. solvent access : 0.498
Apolar alpha sphere proportion : 0.452
Hydrophobicity score: 26.735
Volume score: 3.853
Polarity score: 16
Charge score : -4
Proportion of polar atoms: 34.959
Alpha sphere density : 9.273
Cent. of mass - Alpha Sphere max dist: 22.336
Flexibility : 0.559

Pocket 2 :
Score : 29.205
Druggability Score : 0.853
Number of Alpha Spheres : 190
Total SASA : 463.952
Polar SASA : 163.194
Apolar SASA : 300.759
Volume : 921.783
Mean local hydrophobic density : 63.504
Mean alpha sphere radius : 3.697
Mean alp. sph. solvent access : 0.466
Apolar alpha sphere proportion : 0.595
Hydrophobicity score: 38.690
Volume score: 4.483
Polarity score: 15
Charge score : 3
Proportion of polar atoms: 32.584
Alpha sphere density : 8.886
Cent. of mass - Alpha Sphere max dist: 21.085
Flexibility : 0.371

Pocket 3 :
Score : 3.370
Druggability Score : 0.018
Number of Alpha Spheres : 47
Total SASA : 236.333
Polar SASA : 95.041
Apolar SASA : 141.292
Volume : 414.961
Mean local hydrophobic density : 22.000
Mean alpha sphere radius : 3.890
Mean alp. sph. solvent access : 0.614
Apolar alpha sphere proportion : 0.489
Hydrophobicity score: 27.375
Volume score: 4.000
Polarity score: 4
Charge score : -1
Proportion of polar atoms: 44.828
Alpha sphere density : 3.832
Cent. of mass - Alpha Sphere max dist: 9.680
Flexibility : 0.285

Pocket 4 :
Score : 2.099
Druggability Score : 0.024
Number of Alpha Spheres : 37
Total SASA : 126.614
Polar SASA : 73.479
Apolar SASA : 53.136
Volume : 371.931
Mean local hydrophobic density : 4.571
Mean alpha sphere radius : 3.431
Mean alp. sph. solvent access : 0.452
Apolar alpha sphere proportion : 0.189
Hydrophobicity score: 34.250
Volume score: 5.000
Polarity score: 5
Charge score : -2
Proportion of polar atoms: 44.828
Alpha sphere density : 3.494
Cent. of mass - Alpha Sphere max dist: 9.093
Flexibility : 0.452




  


2. Re: Gostaria de criar um shell script que coletassem dados de pockets de cada Proteína

Wellingthon Dias Queiroz - @tonyhts
tonyhts

(usa Arch Linux)

Enviado em 22/09/2015 - 14:31h

Olá,

Nào entendi, os dados que vc informou não tem 6 colunas... Não seria linhas??

abs
---
Eu Acredito, que ás vezes são as pessoas que ninguém espera nada que fazem as coisas que ninguém consegue imaginar.

--- Mestre dos Mestres - Alan Turing ---


3. Re: Gostaria de criar um shell script que coletassem dados de pockets de cada Proteína

Matheus  Bernardes Costa do Nascimento
matbnas

(usa Ubuntu)

Enviado em 22/09/2015 - 14:52h

Sorry. Nesse caso seriam as 6 primeiras linhas.


4. Re: Gostaria de criar um shell script que coletassem dados de pockets de cada Proteína

Wellingthon Dias Queiroz - @tonyhts
tonyhts

(usa Arch Linux)

Enviado em 22/09/2015 - 17:55h

kk, Agora faz sentido...rs

Vamos lá

1) Crie o script (vc pode dar o nome que vc quiser, mais aqui vamos chamá-lo de prot.sh:
nano prot.sh 

2) Copie e cole o conteúdo abaixo, salve com CTRL O, ENTER depois saia com CTRL X
#!/bin/bash

# Script criado para resolver um problema do usuário @matbnas do VOL.
# Lê o arquivo (informado via parametro), identifica qual "pocket" (grupo)
# tem o maior score e o exibe na tela.
#
# Uso:
# ./prot.sh arquivo.txt

# Identifica e armazena druggabilty score no vetor druggs
druggs=$(grep 'Drugg' $1)

#inicializa variável de comparação
MAIOR_SCORE=0

# Para cada druggabilty armazenado no vetor druggs, filtra os numeros,
# compara com o $MAIOR_SCORE, se for maior, ele assume o valor e define
# a variavél drugg_maior com o vetor em questão.
for i in ${druggs[*]}
do
score=$(echo $i | sed s/[^0-9\.]//g)
if [[ $score > $MAIOR_SCORE ]]
then
MAIOR_SCORE="$score"
drugg_maior="$i"
fi
done

# filtra o arquivo pelo maior druggability score exibindo 2 linhas
# acima e 6 abaixo
grep -A 6 -B 2 "$drugg_maior" $1


3) Dê permissão de execução ao script:
chmod +x prot.sh 


4) execute o script passando o arquivo que contem os dados como parâmetro. Por exemplo:
./prot.sh arquivo.txt 


Acho que é isso.

Espero que ajude

abs,


---
Eu Acredito, que ás vezes são as pessoas que ninguém espera nada que fazem as coisas que ninguém consegue imaginar.

--- Mestre dos Mestres - Alan Turing ---






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts