Précédent   Forum du club des développeurs et IT Pro > Autres langages > Autres langages > R
R Forum d'entraide sur la programmation en langage R
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 08/01/2013, 14h39   #1
upssn
Invité de passage
 
Femme
Étudiant
Inscription : janvier 2013
Messages : 9
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : janvier 2013
Messages : 9
Points : 0
Points : 0
Par défaut Projet R à faire

Bonjour,

J'ai un projet sur le language R à faire et je ne sais pas du tout comment m'y prendre, par où commencer...
J'ai seulement téléchargé le logiciel tinn-R ...

Le premier exercice commence par ça :
"Ecrire une fonction qui enregistre le code génétique contenu dans le fichier séquence.txt dans un vecteur. Chaque élément du vecteur contiendra une baze azotée de la séquence. Une fois la séquence enregistrée, le programme devra calculer le taux de A, U, C, G dans ce code génétique et le présenter sous la forme d'un histogramme."

J'ai essayer "d'insérer" le code génétique en txt dans R mais ça ne fonctionne pas puisque le fichier est seulement sur mon ordi...
Pouvez-vous m'éclairer ?

Merci d'avance.
upssn est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/01/2013, 14h49   #2
A. D.
Modératrice
 
Femme Aline Deschamps
Chargée de Statistiques
Inscription : juin 2010
Messages : 464
Détails du profil
Informations personnelles :
Nom : Femme Aline Deschamps
Âge : 25
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations professionnelles :
Activité : Chargée de Statistiques
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : juin 2010
Messages : 464
Points : 1 294
Points : 1 294
Envoyer un message via Skype™ à A. D.
Bonjour,

Je vous conseille de commencer par jeter un oeil (et effectuer des tests avec R bien sûr !) à divers tutoriaux ou ouvrages (si vous en avez à disposition) sur R
Vous en trouverez probablement sur internet mais sinon il y en a pas mal répertoriés ici : http://r.developpez.com/.
Vous n'avez pas eu de cours de R sinon ?

Ensuite, pour vous aider à démarrer, pour ce qui est du chargement des données dans R, voir par exemple la fonction read.table.
Vous pouvez accéder à l'aide de cette fonction par :
N'hésitez pas ensuite à revenir poser vos questions de manière plus précise et à nous présenter votre code (même faux ou incomplet) sur le forum !

Bonne continuation


Cordialement,

A.D.
__________________

Forum R
Fournir le code utilisé (pensez aux balises code !), les packages nécessaires, ainsi qu'un court mais représentatif extrait du jeu de données et les éventuels messages d'erreur.
Recherche d'informations concernant R : RSiteSearch / tutoriels : http://r.developpez.com/ .

Pensez également au bouton "Résolu" et à voter (en bas à droite des messages) lorsque vous avez obtenu une réponse satisfaisante.
A. D. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/01/2013, 14h53   #3
ced
Rédacteur/Modérateur

 
Avatar de ced
 
Homme Cédric Duprez
Inscription : avril 2002
Messages : 4 068
Détails du profil
Informations personnelles :
Nom : Homme Cédric Duprez
Âge : 37
Localisation : France, Loiret (Centre)

Informations professionnelles :
Secteur : Agroalimentaire - Agriculture

Informations forums :
Inscription : avril 2002
Messages : 4 068
Points : 8 988
Points : 8 988
Bonjour,

En complément, jetez peut-être aussi un œil sur le projet suivant : http://www.bioconductor.org/. Cela peut vous donner des pistes.
Comme outil d'interface vers R, je vous conseille également RStudio, plus simple à mettre en œuvre et plus complet que Tinn-R (à mon goût du moins).

Bon courage et n'hésitez pas à revenir vers le forum pour préciser les problèmes que vous rencontrez.
__________________
Rédacteur / Modérateur SGBD
Mes tutoriels et la FAQ MySQL

----------------------------------------------------
Pensez aux balises code et au tag
Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça
ced est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/01/2013, 15h45   #4
upssn
Invité de passage
 
Femme
Étudiant
Inscription : janvier 2013
Messages : 9
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : janvier 2013
Messages : 9
Points : 0
Points : 0
Merci à vous,
J'ai déjà fait pas mal d'exercices avec R en cours mais c'étaient de simples calculs, puis on était sur linux avec une console différente. Maintenant que je suis chez moi avec d'autres logiciels, je ne m'y retrouve plus ...
Je vais regarder vos liens (merci) et télécharger Rstudio si il est mieux.
Mais je ne comprends pas comment utiliser le fonction read sans avoir enregistré au préalable ma séquence.txt sur le logiciel ...
Nous n'avons jamais vu ça en cours, puisqu'il s'agissait seulement de résoudre des algorithmes sans histogramme et fichier texte ...
En tout cas, merci, je vais me repencher dessus
upssn est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/01/2013, 15h57   #5
ced
Rédacteur/Modérateur

 
Avatar de ced
 
Homme Cédric Duprez
Inscription : avril 2002
Messages : 4 068
Détails du profil
Informations personnelles :
Nom : Homme Cédric Duprez
Âge : 37
Localisation : France, Loiret (Centre)

Informations professionnelles :
Secteur : Agroalimentaire - Agriculture

Informations forums :
Inscription : avril 2002
Messages : 4 068
Points : 8 988
Points : 8 988
Si vous nous fournissez un extrait des premières lignes du fichier .txt, on peut vous aider à utiliser la fonction read.table de manière correcte.
__________________
Rédacteur / Modérateur SGBD
Mes tutoriels et la FAQ MySQL

----------------------------------------------------
Pensez aux balises code et au tag
Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça
ced est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/01/2013, 15h57   #6
upssn
Invité de passage
 
Femme
Étudiant
Inscription : janvier 2013
Messages : 9
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : janvier 2013
Messages : 9
Points : 0
Points : 0
J'ai réussi à faire ça :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
> getwd()
[1] "C:/Users/Sarah/Documents"
> read.table("sequence.txt")
   V1 V2 V3 V4 V5 V6 V7 V8 V9 V10
1   A  C  C  U  G  U  C  A  A   A
2   C  A  A  A  U  C  U  G  G   U
3   C  A  A  C  C  U  G  U  G   U
4   C  C  A  A  U  U  C  A  G   G
5   U  C  U  G  A  A  C  C  U   C
6   A  A  A  C  C  G  U  G  U   A
7   C  A  G  U  A  G  C  A  U   C
8   A  C  A  U  G  G  U  G  A   A
9   C  C  U  U  G  U  C  A  C   A
10  U  G  C  A  C  A  U  C  A   A
11  U  A  A  C  G  G  U  A  C   U
12  A  G  G  U  C  U  A  A  U   G
> seq<-scan(file="sequence.txt",what="character")
Read 120 items
> seq
  [1] "A" "C" "C" "U" "G" "U" "C" "A" "A" "A" "C" "A" "A" "A"
 [15] "U" "C" "U" "G" "G" "U" "C" "A" "A" "C" "C" "U" "G" "U"
 [29] "G" "U" "C" "C" "A" "A" "U" "U" "C" "A" "G" "G" "U" "C"
 [43] "U" "G" "A" "A" "C" "C" "U" "C" "A" "A" "A" "C" "C" "G"
 [57] "U" "G" "U" "A" "C" "A" "G" "U" "A" "G" "C" "A" "U" "C"
 [71] "A" "C" "A" "U" "G" "G" "U" "G" "A" "A" "C" "C" "U" "U"
 [85] "G" "U" "C" "A" "C" "A" "U" "G" "C" "A" "C" "A" "U" "C"
 [99] "A" "A" "U" "A" "A" "C" "G" "G" "U" "A" "C" "U" "A" "G"
[113] "G" "U" "C" "U" "A" "A" "U" "G"
La séquence est bien enregistrée là ?
upssn est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/01/2013, 16h02   #7
ced
Rédacteur/Modérateur

 
Avatar de ced
 
Homme Cédric Duprez
Inscription : avril 2002
Messages : 4 068
Détails du profil
Informations personnelles :
Nom : Homme Cédric Duprez
Âge : 37
Localisation : France, Loiret (Centre)

Informations professionnelles :
Secteur : Agroalimentaire - Agriculture

Informations forums :
Inscription : avril 2002
Messages : 4 068
Points : 8 988
Points : 8 988
Avec la fonction scan, oui : vous obtenez bien un vecteur de 120 éléments (un par base).
Ça semble donc correct.
Ne reste plus qu'à sortir le nombre de chacune des bases et l'histogramme.
Besoin d'aide pour ça ?
__________________
Rédacteur / Modérateur SGBD
Mes tutoriels et la FAQ MySQL

----------------------------------------------------
Pensez aux balises code et au tag
Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça
ced est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/01/2013, 16h25   #8
upssn
Invité de passage
 
Femme
Étudiant
Inscription : janvier 2013
Messages : 9
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : janvier 2013
Messages : 9
Points : 0
Points : 0
Oui j'aimerais bien parce que j'ai essayé avec la fréquence de cette manière mais ça ne fonctionne pas : (nous avions vu ça en cours mais avec des vecteurs)

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
freq<-seq("A")
i<-1
while(i<=length(seq))
{
freq[seq[i]]<-freq[seq[i]]+1
i<i+1
}
i<-1
while(i<=length(freq))
{
freq[i]<-freq[i]/length(seq)
print(paste("la fréquence de",i,"est de",freq[i])
i<i+1
}
upssn est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/01/2013, 16h46   #9
ced
Rédacteur/Modérateur

 
Avatar de ced
 
Homme Cédric Duprez
Inscription : avril 2002
Messages : 4 068
Détails du profil
Informations personnelles :
Nom : Homme Cédric Duprez
Âge : 37
Localisation : France, Loiret (Centre)

Informations professionnelles :
Secteur : Agroalimentaire - Agriculture

Informations forums :
Inscription : avril 2002
Messages : 4 068
Points : 8 988
Points : 8 988
Il y a bien plus simple :
Ne cherchez pas à faire de jolis affichages de résultats avec R (du genre "la fréquence de ... est ...). Ce n'est pas fait pour ça.
Essayez déjà d'obtenir l'information "brute". Et pour ça, table(seq) suffit .
__________________
Rédacteur / Modérateur SGBD
Mes tutoriels et la FAQ MySQL

----------------------------------------------------
Pensez aux balises code et au tag
Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça
ced est actuellement connecté   Envoyer un message privé Réponse avec citation 10
Vieux 08/01/2013, 17h07   #10
upssn
Invité de passage
 
Femme
Étudiant
Inscription : janvier 2013
Messages : 9
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : janvier 2013
Messages : 9
Points : 0
Points : 0
d'accord et c'est quoi que je dois remplacer par table seq ?
upssn est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/01/2013, 17h54   #11
tomaprice
Membre régulier
 
Inscription : mars 2009
Messages : 77
Détails du profil
Informations forums :
Inscription : mars 2009
Messages : 77
Points : 89
Points : 89
Code :
1
2
3
seq<-scan(file="sequence.txt",what="character")
t = table(seq)
barplot(t)
tomaprice est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/01/2013, 18h39   #12
upssn
Invité de passage
 
Femme
Étudiant
Inscription : janvier 2013
Messages : 9
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : janvier 2013
Messages : 9
Points : 0
Points : 0
Merci beaucoup

Pour la suite il y a ça :

Ecrire une fonction qui prend en paramètre une séquence de bases azotées, et qui retourne :
• La position de cette séquence dans le code génétique, la fonction renverra un vecteur avec l’ensemble des positions de départ.
• -1 si la séquence n’est pas présente

Je dois bien utiliser la fonction while ?
upssn est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2013, 13h06   #13
upssn
Invité de passage
 
Femme
Étudiant
Inscription : janvier 2013
Messages : 9
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : janvier 2013
Messages : 9
Points : 0
Points : 0
j'ai trouver la fonction which et %in% qui permettent de retrouver dans un vecteur si j'ai bien compris. c'est peut être ça que je dois utiliser ....
upssn est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2013, 13h13   #14
ced
Rédacteur/Modérateur

 
Avatar de ced
 
Homme Cédric Duprez
Inscription : avril 2002
Messages : 4 068
Détails du profil
Informations personnelles :
Nom : Homme Cédric Duprez
Âge : 37
Localisation : France, Loiret (Centre)

Informations professionnelles :
Secteur : Agroalimentaire - Agriculture

Informations forums :
Inscription : avril 2002
Messages : 4 068
Points : 8 988
Points : 8 988
Ça semble être une bonne piste
__________________
Rédacteur / Modérateur SGBD
Mes tutoriels et la FAQ MySQL

----------------------------------------------------
Pensez aux balises code et au tag
Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça
ced est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2013, 13h53   #15
upssn
Invité de passage
 
Femme
Étudiant
Inscription : janvier 2013
Messages : 9
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : janvier 2013
Messages : 9
Points : 0
Points : 0
Je vais tenter d'expliquer mon raisonnement dans un document à côté parce que je n'arrive pas à le mettre en forme...
J'ai tenté des choses de la sorte en sachant que ça n'allait pas fonctionner de toute manière
Code :
which(seq="A","U","C","G")
upssn est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/01/2013, 17h45   #16
tomaprice
Membre régulier
 
Inscription : mars 2009
Messages : 77
Détails du profil
Informations forums :
Inscription : mars 2009
Messages : 77
Points : 89
Points : 89
Je n'ai pas compris le problème en question, un exemple serait bienvenu.
tomaprice est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/01/2013, 15h17   #17
fractal_ena
Invité régulier
 
Inscription : mai 2007
Messages : 4
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 4
Points : 6
Points : 6
Salut
il me semble que le domaine de biométrie a ses propres packages qui peuvent traiter la suite des caractère CGAT.. comme des séquences et non pas comme des suites de caractères ... mais je ne suis pas spécialiste.


Je propose de regarder un peu ici http://pbil.univ-lyon1.fr/R_svn/pdf/tdr16.pdf il y du traitement de génome bactérien si ça peut aider.
fractal_ena est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/01/2013, 18h09   #18
upssn
Invité de passage
 
Femme
Étudiant
Inscription : janvier 2013
Messages : 9
Détails du profil
Informations personnelles :
Sexe : Femme
Localisation : France

Informations professionnelles :
Activité : Étudiant
Secteur : Industrie Pharmaceutique

Informations forums :
Inscription : janvier 2013
Messages : 9
Points : 0
Points : 0
Merci beaucoup
upssn est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 15h44.


 
 
 
 
Partenaires

Hébergement Web