Différences
Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédente Prochaine révisionLes deux révisions suivantes | ||
teaching:progappchim:bioinformatic [2016/03/15 11:54] – créée villersd | teaching:progappchim:bioinformatic [2021/02/16 16:26] – villersd | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
====== Bioinformatique ====== | ====== Bioinformatique ====== | ||
- | Manipulations | + | Un des objectifs majeurs de la [[wp> |
+ | |||
+ | Ces séquences sont accessibles librement et publiquement, | ||
+ | |||
+ | {{wp> | ||
+ | |||
+ | Voir aussi le site [[https:// | ||
+ | |||
+ | {{wp> | ||
+ | |||
+ | Voir aussi le site [[https:// | ||
+ | |||
+ | [[https:// | ||
+ | * Avec la distribution Anaconda, via l' | ||
+ | |||
+ | |||
+ | |||
+ | <note tip> | ||
===== Compter les nucléotides d'une séquence ADN ===== | ===== Compter les nucléotides d'une séquence ADN ===== | ||
- | <sxh python; title : Counting_DNA_Nucleotides-01.py> | + | <code python Counting_DNA_Nucleotides-01.py> |
# | # | ||
# -*- coding: utf-8 -*- | # -*- coding: utf-8 -*- | ||
Ligne 14: | Ligne 31: | ||
# utilisation d'une liste et de la méthode .count() | # utilisation d'une liste et de la méthode .count() | ||
- | bases=[" | + | bases = [" |
for base in bases: | for base in bases: | ||
- | print adn.count(base), | + | print(adn.count(base), |
- | + | print() | |
# Variante : | # Variante : | ||
for c in ' | for c in ' | ||
- | print adn.count(c), | + | print(adn.count(c), |
- | + | print() | |
# variante un peu moins lisible | # variante un peu moins lisible | ||
Ligne 31: | Ligne 48: | ||
# utilisation de la technique "list comprehension" | # utilisation de la technique "list comprehension" | ||
- | count=[adn.count(c) for c in ' | + | count = [adn.count(c) for c in ' |
for val in count: | for val in count: | ||
- | print val, | + | print(val,) |
- | + | print() | |
# autre "list comprehension", | # autre "list comprehension", | ||
- | print "%d %d %d %d" % tuple([adn.count(X) for X in " | + | print("%d %d %d %d" % tuple([adn.count(X) for X in " |
# count "à la main", sans utilisation de fonctions/ | # count "à la main", sans utilisation de fonctions/ | ||
Ligne 47: | Ligne 64: | ||
count[i] +=1 | count[i] +=1 | ||
for val in count: | for val in count: | ||
- | print val, | + | print(val,) |
- | + | print() | |
# count "à la main", avec .index() | # count "à la main", avec .index() | ||
Ligne 56: | Ligne 73: | ||
count[ACGT.index(c)] += 1 | count[ACGT.index(c)] += 1 | ||
for val in count: | for val in count: | ||
- | print val, | + | print(val,) |
- | + | print() | |
# utilisation de la librairie collections | # utilisation de la librairie collections | ||
Ligne 64: | Ligne 81: | ||
for c in adn: | for c in adn: | ||
ncount[c] += 1 | ncount[c] += 1 | ||
- | print ncount[' | + | print(ncount[' |
# collections.Counter | # collections.Counter | ||
from collections import Counter | from collections import Counter | ||
- | for k,v in sorted(Counter(adn).items()): | + | for k,v in sorted(Counter(adn).items()): |
- | + | | |
+ | print() | ||
# avec un dictionnaire | # avec un dictionnaire | ||
Ligne 75: | Ligne 93: | ||
for c in adn: | for c in adn: | ||
freq[c] += 1 | freq[c] += 1 | ||
- | print freq[' | + | print(freq[' |
# avec un dictionnaire et count(), impression différente | # avec un dictionnaire et count(), impression différente | ||
dico={} | dico={} | ||
for base in bases: | for base in bases: | ||
- | dico[base]=adn.count(base) | + | dico[base] = adn.count(base) |
for key,val in dico.items(): | for key,val in dico.items(): | ||
- | print "{} = {}" | + | print("{} = {}" |
- | </sxh> | + | </ |
+ | |||
+ | |||
+ | ===== Trouver un motif ===== | ||
+ | + lecture de fichier | ||
+ | |||
+ | <code python Finding_a_Protein_Motif-01.py> | ||
+ | # | ||
+ | # -*- coding: utf-8 -*- | ||
+ | """ | ||
+ | La description complète et les caractéristiques d'une protéine particulière peuvent être obtenues via l'ID " | ||
+ | http:// | ||
+ | |||
+ | On peut aussi obtenir la séquence peptidique au format FASTA via le lien : | ||
+ | http:// | ||
+ | """ | ||
+ | |||
+ | from Bio import SeqIO | ||
+ | from Bio import ExPASy | ||
+ | from Bio import SeqIO | ||
+ | |||
+ | dic = {" | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | |||
+ | aminoacids = '' | ||
+ | print(aminoacids) | ||
+ | |||
+ | # UniProt Protein Database access IDs | ||
+ | proteins = [' | ||
+ | |||
+ | handle = ExPASy.get_sprot_raw(proteins[0]) | ||
+ | seq_record = SeqIO.read(handle, | ||
+ | handle.close() | ||
+ | print() | ||
+ | print(seq_record) | ||
+ | |||
+ | </code> | ||
===== Références ===== | ===== Références ===== | ||
- | | + | * [[http:// |
- | * [[http:// | + | |
- | * [[http:// | + | |
- | | + | |
* [[https:// | * [[https:// | ||
* [[https:// | * [[https:// | ||
* [[https:// | * [[https:// | ||
* [[https:// | * [[https:// | ||
- | * [[http:// | + | |
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * Articles de la revue " | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * documentation sur les arbres phylogénétiques : [[https:// | ||
+ | * [[http:// | ||
+ | * [[http:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | | ||
+ | * [[https:// | ||
+ | * [[http:// | ||
+ | * références sur la lecture de fichiers : | ||
+ | * [[http:// | ||
+ | * [[http:// |