2011-08-23 2 views
3

J'ai essayé de fusionner différents fichiers de délimitation d'onglet en un seul fichier à l'aide de la commande R suivante.Suppression d'une colonne supplémentaire dans le fichier de délimitation d'onglet

Si vous observez, je sauve même le fichier en utilisant la commande write.table. Maintenant, j'ai besoin de lire les mêmes fichiers pour une analyse plus approfondie. Le plus gros problème auquel je suis confronté est qu'il existe une colonne supplémentaire sans aucun nom de colonne créé automatiquement. Screen shot of delim file opened in excel with Extra column(Red) Si vous constatez qu'une colonne (couleur rouge) est créée automatiquement lorsque j'utilise la fonction write.table. Je veux me débarrasser de cette colonne car elle gêne tous les autres calculs. My actual output like how I need it to be saved

combine=function(file) { 
split_list <- unlist(strsplit(file,split=",")) 
setwd("D:/combine") 
dataset <- do.call("cbind",lapply(split_list,FUN=function(files) { read.table(files,header=TRUE, sep="\t") })) 
names(dataset)[1]=paste("Probe_ID") 
drop=c("ProbeID") 
dataset=dataset[,!(names(dataset)%in%drop)] 
dataset$X=NULL 
write.table(dataset,file="D:/output/illumina.txt",sep="\t",col.names=NA) 
return ("illumina.txt") 
} 

Répondre

5

Utilisez l'argument row.names=FALSE dans write.table.

+0

merci beaucoup James – Dinesh

+0

Pas de problème. Ne pas oublier d'accepter la réponse si elle résout le problème;) – James

+0

James.if vous observez les noms de ma colonne, vous trouverez le "X" est ajouté à array_name (ie.X448 ...). Je ne sais pas comment pour se débarrasser de cela parce que ce n'est pas la partie du nom du tableau .. toute aide :-) – Dinesh

2

Comme dit @James - ou utiliser row.names=1 dans read.table() pour indiquer que la première colonne désigne les identificateurs de ligne de la table lors de la lecture de la table de nouveau dans R.

+0

qui a été utile – Dinesh

Questions connexes