Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
| teaching:progappchim:bioinformatic [2016/03/15 12:13] – villersd | teaching:progappchim:bioinformatic [2022/09/22 16:59] (Version actuelle) – [Références] 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:// | ||
| + | |||
| + | ===== Installer Biopython ===== | ||
| + | |||
| + | [[https:// | ||
| + | * Avec la distribution Anaconda, via l' | ||
| + | * via le site Pypi (pypi.org) et la commande suivante : pip install biopython | ||
| + | |||
| ===== 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 32: | ||
| # 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 49: | ||
| # 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 65: | ||
| 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 74: | ||
| 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 82: | ||
| 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 94: | ||
| 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> | + | </code> |
| Ligne 89: | Ligne 108: | ||
| + lecture de fichier | + lecture de fichier | ||
| - | <sxh python; title : Finding_a_Protein_Motif-01.py> | + | <code python Finding_a_Protein_Motif-01.py> |
| # | # | ||
| # -*- coding: utf-8 -*- | # -*- coding: utf-8 -*- | ||
| Ligne 121: | Ligne 140: | ||
| " | " | ||
| - | aminoacids = '' | + | aminoacids = '' |
| - | print aminoacids | + | print(aminoacids) |
| # UniProt Protein Database access IDs | # UniProt Protein Database access IDs | ||
| Ligne 130: | Ligne 149: | ||
| seq_record = SeqIO.read(handle, | seq_record = SeqIO.read(handle, | ||
| handle.close() | handle.close() | ||
| - | + | print() | |
| - | print seq_record | + | print(seq_record) |
| - | </sxh> | + | </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 : | * références sur la lecture de fichiers : | ||
| * [[http:// | * [[http:// | ||
| * [[http:// | * [[http:// | ||
| + | * données exemples dans le cadre de la COVID-19 : | ||
| + | * [[https:// | ||
| + | |||