A voir également:
- Spliter un fichier fasta multiséquence en plusieurs fichiers
- Fichier rar - Guide
- Fichier host - Guide
- Fichier iso - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
3 réponses
dubcek
Messages postés
18723
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
11 mai 2024
5 615
19 mars 2015 à 08:15
19 mars 2015 à 08:15
hello
montre un exemple de fichier
montre un exemple de fichier
dubcek
Messages postés
18723
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
11 mai 2024
5 615
19 mars 2015 à 14:25
19 mars 2015 à 14:25
$ awk '/^>/{n=substr($0, 2)} {print > n}' fichier
$ ls
SEQUENCE_1 SEQUENCE_2 fichier
$ more S*
::::::::::::::
SEQUENCE_1
::::::::::::::
>SEQUENCE_1
MTEITAAMVKELRESTGAGMMDCKNALSETNGDFDKAVQLLREKGLGKAAKKADRLAAEG
LVSVKVSDDFTIAAMRPSYLSYEDLDMTFVENEYKALVAELEKENEERRRLKDPNKPEHK
IPQFASRKQLSDAILKEAEEKIKEELKAQGKPEKIWDNIIPGKMNSFIADNSQLDSKLTL
MGQFYVMDDKKTVEQVIAEKEKEFGGKIKIVEFICFEVGEGLEKKTEDFAAEVAAQL
::::::::::::::
SEQUENCE_2
::::::::::::::
>SEQUENCE_2
SATVSEINSETDFVAKNDQFIALTKDTTAHIQSNSLQSVEELHSSTINGVKFEEYLKSQI
ATIGENLVVRRFATLKAGANGVVNGYIHTNGRVGVVIAAACDSAEVASKSRDLLRQICMH
Navré mais je suis un vrai néophyte, ce qui entraine une autre question...
Etant donné que ces fichiers sont nombreux dans un dossier particulier et que je dois faire de même avec tous ces fichiers es qu'un script de ce type me permettrai de tout faire de façon itérative ?
Encore merci pour ces réponses
Etant donné que ces fichiers sont nombreux dans un dossier particulier et que je dois faire de même avec tous ces fichiers es qu'un script de ce type me permettrai de tout faire de façon itérative ?
for X in $(ls) ; do awk '/^>/{n=substr($0, 13)} {print > n}' $X ; done
Encore merci pour ces réponses
dubcek
Messages postés
18723
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
11 mai 2024
5 615
19 mars 2015 à 14:56
19 mars 2015 à 14:56
faire simplement
si une même séquence se trouve dans plusieurs fichiers, seule la dernière restera
awk '/^>/{n=substr($0, 13)} {print > n}' *
si une même séquence se trouve dans plusieurs fichiers, seule la dernière restera
dubcek
Messages postés
18723
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
11 mai 2024
5 615
Modifié par dubcek le 19/03/2015 à 15:24
Modifié par dubcek le 19/03/2015 à 15:24
on ne peut pas mettre comme nom de fichier une séquence qui contient des | ] [ ou ()
il ne faut que du texte, chiffres, ou point, tiret, etc
montre des exemples de séquences
il ne faut que du texte, chiffres, ou point, tiret, etc
montre des exemples de séquences
>gi|658608828|ref|YP_009045697.1| NADH dehydrogenase subunit 2 (mitochondrion) [Ideopsis similis]
aaaaaaaaaaaaaeeeeeeeeee
>gi|658608829|ref|YP_009045698.1| cytochrome c oxidase subunit I, partial (mitochondrion) [Ideopsis similis]
aaaaaaaaaaaaaaaaaaaaeeeeeeeeeeeeee
>gi|658608830|ref|YP_009045699.1| cytochrome c oxidase subunit II (mitochondrion) [Ideopsis similis]
aaaaaaaaaaaeeeeeeeeeeeeeee
>gi|658608833|ref|YP_009045700.1| ATP synthase F0 subunit 8 (mitochondrion) [Ideopsis similis]
aaeaaeaaaaeaeaeaeaaeaeaaaeeeaaeae
>gi|658608832|ref|YP_009045701.1| ATP synthase F0 subunit 6 (mitochondrion) [Ideopsis similis]
aaaaaeaeeaeaeaeaeaeaeeaeaeaeeaaeeaeeaeaeeaea
>gi|658608831|ref|YP_009045702.1| cytochrome c oxidase subunit III (mitochondrion) [Ideopsis similis]
aeeaeaeaeaeeaeaeeeaeaeeaeeeeaea
>gi|658608834|ref|YP_009045703.1| NADH dehydrogenase subunit 3 (mitochondrion) [Ideopsis similis]
eaeaeaeaeaeaeeaeeeeaeaeaaeaeeeaeaee
>gi|658608835|ref|YP_009045704.1| NADH dehydrogenase subunit 5 (mitochondrion) [Ideopsis similis]
aaeaeeaaeeaeaeaeaeaeaeeeaeaeea
>gi|658608836|ref|YP_009045705.1| NADH dehydrogenase subunit 4 (mitochondrion) [Ideopsis similis]
aeaeeaeaeaeaeaeeaaeeaeeaeaeaeeaeeaea
>gi|658608837|ref|YP_009045706.1| NADH dehydrogenase subunit 4L (mitochondrion) [Ideopsis similis]
eaeaeeaeaeeeaeeaeeaeeaeaeaeaeaeeaeeaea
>gi|658608838|ref|YP_009045707.1| NADH dehydrogenase subunit 6 (mitochondrion) [Ideopsis similis]
aeaeeaeaeeeaeaeaeaeeaeeaeeaeaeaea
>gi|658608840|ref|YP_009045708.1| cytochrome b (mitochondrion) [Ideopsis similis]
eaeaeaeeaeaeeaeeaeeaeea
>gi|658608839|ref|YP_009045709.1| NADH dehydrogenase subunit 1 (mitochondrion) [Ideopsis similis]
aeaeeaaeaeeaeeae
Voila un exemple d'un de mes fichiers, l'idéal serait qu'il ai le nom :
NADH dehydrogenase subunit 2 Ideopsis similisis
j'ai mis des "a" et "e" à la place des séquences parce que je ne pouvais pas écrire en majuscule
aaaaaaaaaaaaaeeeeeeeeee
>gi|658608829|ref|YP_009045698.1| cytochrome c oxidase subunit I, partial (mitochondrion) [Ideopsis similis]
aaaaaaaaaaaaaaaaaaaaeeeeeeeeeeeeee
>gi|658608830|ref|YP_009045699.1| cytochrome c oxidase subunit II (mitochondrion) [Ideopsis similis]
aaaaaaaaaaaeeeeeeeeeeeeeee
>gi|658608833|ref|YP_009045700.1| ATP synthase F0 subunit 8 (mitochondrion) [Ideopsis similis]
aaeaaeaaaaeaeaeaeaaeaeaaaeeeaaeae
>gi|658608832|ref|YP_009045701.1| ATP synthase F0 subunit 6 (mitochondrion) [Ideopsis similis]
aaaaaeaeeaeaeaeaeaeaeeaeaeaeeaaeeaeeaeaeeaea
>gi|658608831|ref|YP_009045702.1| cytochrome c oxidase subunit III (mitochondrion) [Ideopsis similis]
aeeaeaeaeaeeaeaeeeaeaeeaeeeeaea
>gi|658608834|ref|YP_009045703.1| NADH dehydrogenase subunit 3 (mitochondrion) [Ideopsis similis]
eaeaeaeaeaeaeeaeeeeaeaeaaeaeeeaeaee
>gi|658608835|ref|YP_009045704.1| NADH dehydrogenase subunit 5 (mitochondrion) [Ideopsis similis]
aaeaeeaaeeaeaeaeaeaeaeeeaeaeea
>gi|658608836|ref|YP_009045705.1| NADH dehydrogenase subunit 4 (mitochondrion) [Ideopsis similis]
aeaeeaeaeaeaeaeeaaeeaeeaeaeaeeaeeaea
>gi|658608837|ref|YP_009045706.1| NADH dehydrogenase subunit 4L (mitochondrion) [Ideopsis similis]
eaeaeeaeaeeeaeeaeeaeeaeaeaeaeaeeaeeaea
>gi|658608838|ref|YP_009045707.1| NADH dehydrogenase subunit 6 (mitochondrion) [Ideopsis similis]
aeaeeaeaeeeaeaeaeaeeaeeaeeaeaeaea
>gi|658608840|ref|YP_009045708.1| cytochrome b (mitochondrion) [Ideopsis similis]
eaeaeaeeaeaeeaeeaeeaeea
>gi|658608839|ref|YP_009045709.1| NADH dehydrogenase subunit 1 (mitochondrion) [Ideopsis similis]
aeaeeaaeaeeaeeae
Voila un exemple d'un de mes fichiers, l'idéal serait qu'il ai le nom :
NADH dehydrogenase subunit 2 Ideopsis similisis
j'ai mis des "a" et "e" à la place des séquences parce que je ne pouvais pas écrire en majuscule
dubcek
Messages postés
18723
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
11 mai 2024
5 615
19 mars 2015 à 15:59
19 mars 2015 à 15:59
on ne prend que le champ 5
on supprime tout ce qu'il y a entre () et tout les ][ et l'espace du début
on supprime tout ce qu'il y a entre () et tout les ][ et l'espace du début
$ awk -F '|' '/^>/{gsub("[(][^)]*) |[][]|^ *", "", $5); n=$5} {print > n}' fichier
Lorsque je rentre cette ligne j'obtiens :
De plus il faut bien que je fasse ça pour n entre 1 et 13 pour avoir toutes mes séquences c'est ça ?
$ awk -F '|' '/^>/{gsub("[(][^)]*) |[][]|^ *", "", $5); n=$5} {print > n}' Seq1a1
awk: syntax error in regular expression [(][^)]*) |[][]|^ * at |[][]|^ *
source line number 1
context is
/^>/{gsub("[(][^)]*) |[][]|^ *", "", >>> $5) <<<
De plus il faut bien que je fasse ça pour n entre 1 et 13 pour avoir toutes mes séquences c'est ça ?
dubcek
Messages postés
18723
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
11 mai 2024
5 615
Modifié par dubcek le 19/03/2015 à 17:12
Modifié par dubcek le 19/03/2015 à 17:12
macOS ..aie ... . essayer avec nawk
non, awk va lire tout le fichier qui contient les 13 séquences et créer les 13 fichiers
non, awk va lire tout le fichier qui contient les 13 séquences et créer les 13 fichiers
dubcek
Messages postés
18723
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
11 mai 2024
5 615
19 mars 2015 à 17:50
19 mars 2015 à 17:50
oui
je vais essayer avec un vieil awk compatible avec celui du Mac
je vais essayer avec un vieil awk compatible avec celui du Mac
dubcek
Messages postés
18723
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
11 mai 2024
5 615
Modifié par dubcek le 19/03/2015 à 17:58
Modifié par dubcek le 19/03/2015 à 17:58
essayer
awk -F '|' '/^>/{gsub("[(][^)]*[)] |[][]", "", $5); sub("^ ", "", $5); n=$5} {print > n}' Seq1a1
19 mars 2015 à 13:47
Il y a ici deux séquences dans cet exemple et 13 dans le cas de mes fichiers