2016-09-20 3 views
1

J'essaie d'analyser une adresse de fichier et d'extraire à la fois l'emplacement du fichier et le nom du fichier. Par exemple, je veux ceci:fractionnement des chaînes dans R avec barre oblique inverse

"C:\Users\carriebrown\Desktop\test\Project_8754.csv" 

pour devenir ceci:

"C:\Users\carriebrown\Desktop\test\" and "Project_8754.csv" 

Je cherche à utiliser:

strsplit(file,'\\', fixed=TRUE) 

Mais continuer à obtenir l'erreur:

Error in strsplit(file, "\", fixed = TRUE) : non-character argument

Existe-t-il un moyen de le faire en R avec strsplit? Sinon, existe-t-il un moyen de le faire d'une manière différente?

+3

Voir '? Basename'. Les fonctions énumérées ici feront cette tâche pour vous. – Benjamin

+0

Excellent! Merci @Benjamin! –

Répondre

1

Que pensez-vous de cela?

path <- unlist(strsplit('C:\\Users\\carriebrown\\Desktop\\test\\Project_8754.csv','\\', 
         fixed=TRUE)) 
file <- path[length(path)] 
path <- paste(path[-length(path)], collapse='\\') 
path 
#[1] "C:\\Users\\carriebrown\\Desktop\\test" 
file 
#[1] "Project_8754.cs