Bonjour,
Je souhaite extraire un certain nombre d'informations d'un fichier (geneCount.csv.tsv) comportant des milliers de lignes et 2 colonnes :
Le résultat que je souhaite obtenir est :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 ID=EHI_072740;Name=EHI_072740;description=hypothetical+protein;size=1758;web_id=EHI_072740;locus_tag=EHI_072740;size=1758;Alias=3287.t00002,3287.m00024_0 106 ID=EHI_043440;Name=EHI_043440;description=regulator+of+nonsense+transcripts%2C+putative;size=3445;web_id=EHI_043440;locus_tag=EHI_043440;size=3445;Alias=3062.t00001_1 342 ID=EhLINE1_157_1 6 ID=EhLINE1_158_1 7 ID=EhLINE2_106_1 4 ...
Après quelques heures de test, voilà ce que j'obtiens (fichier construction_matrix) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 EHI_072740 106 EHI_043440 342 EhLINE1_157_1 6 EhLINE1_158_1 7 EhLINE2_106_1 4
Je commence par lire mon fichier initial, dont je recopie la première colonne. Je lis ce nouveau fichier en choisissant comme séparateur ";", ce qui me permet de me débarasser ensuite de ce que je ne veux pas. Le problème est qu'à chaque fois, j'ai une indexation automatique et un "x" et je ne sais pas comment les enlever
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 x 1 x 2 1 ID=EHI_072740 3 2 ID=EHI_043440 4 3 ID=EhLINE1_157_1 5 4 ID=EhLINE1_158_1 6 5 ID=EhLINE2_106_1
Voici le code que j'utilise (comme j'ai 6 fichiers de ce type, j'utilise en plus paste()):
Je pensais que c'était dans les options de write.table, mais je n'ai rien trouvé de ce côté là ! J'espère que quelqu'un peut m'éclairer un peu
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 for (s in s_lane) { chemin=paste("Donnees/amibe/Bowtie/geneCount/L",s,".geneCount.csv.tsv",sep="") donnees <- read.delim(chemin, header=FALSE, sep="\t",stringsAsFactors=TRUE ) write.table(donnees[,1],file=paste("Donnees/amibe/Bowtie/geneCount/construction",s,".txt",sep=""),sep="\t", quote=FALSE) } for (s in s_lane) { chemin2=paste("Donnees/amibe/Bowtie/geneCount/construction",s,".txt",sep="") donnees2 <- read.delim(chemin2, header=FALSE, sep=";" ) #,stringsAsFactors=TRUE write.table(donnees2[,1],file=paste("Donnees/amibe/Bowtie/geneCount/construction_matrix",s,".txt",sep=""),sep="\t", quote=FALSE) }![]()
Partager