web-dev-qa-db-fra.com

Comment ouvrir un fichier CSV dans R quand R dit "Aucun fichier ou répertoire de ce type"?

J'ai un fichier Excel que je veux ouvrir dans R. J'ai essayé ces deux commandes après avoir enregistré le fichier Excel en tant que fichier csv ou texte.

read.table () ou read.csv ()

Je pense qu'une partie du problème réside dans l'emplacement du fichier. Je l'ai enregistré sur le bureau. Qu'est-ce que j'oublie ici?

Voici la sortie R

In file(file, "rt") :
  cannot open file 'Rtrial.csv': No such file or directory
> help.search("read.csv")
> read.csv("Rtrial.csv")
Error in file(file, "rt") : cannot open the connection
In addition: Warning message:
In file(file, "rt") :
  cannot open file 'Rtrial.csv': No such file or directory
> read.table("tab")
19
illbill

Pour supprimer une autre option, pourquoi ne pas définir le répertoire de travail (de préférence via un script) sur le bureau à l'aide de setwd('C:\John\Desktop'), puis lire les fichiers en utilisant simplement les noms de fichiers

34
Maiasaura

Essayer

f <- file.choose()

pour choisir le fichier de manière interactive et enregistrer le nom dans f.

Puis exécutez read.csv sur le nom de fichier enregistré.

d <- read.csv(f)
15
Aaron

On dirait que vous avez juste un problème avec le chemin. Incluez le chemin d'accès complet. Si vous utilisez des barres obliques inverses, vous devez les échapper: "C:\\folder\\folder\\Desktop\\file.csv" ou "C:/folder/folder/Desktop/file.csv".

myfile = read.csv("C:/folder/folder/Desktop/file.csv")  # or read.table()

Il peut également être judicieux d’éviter les espaces et les symboles dans vos noms de fichiers, même si je suis assez certain que les espaces sont OK.

12
Benjamin

Voici une façon de le faire. Il utilise la capacité de R pour construire des chemins de fichiers basés sur la plate-forme et fonctionnera donc à la fois sur Mac OS et Windows. De plus, vous n'avez pas besoin de convertir votre fichier xls en csv, car de nombreux packages R vous aideront à lire les fichiers xls directement (par exemple, le package gdata).

# get user's home directory
home = setwd(Sys.getenv("HOME"));

# construct path to file
fpath = file.path(home, "Desktop", "RTrial.xls");

# load gdata library to read xls files
library(gdata);

# read xls file
Rtrial = read.xls(fpath);

Laissez-moi savoir si cela fonctionne.

6
Ramnath

J'ai dû combiner les réponses Maiasaura et Svun pour que cela fonctionne: utiliser setwd et échapper à toutes les barres obliques.

setwd('C:\\Users\\firstname\ lastname\\Desktop\\folder1\\folder2\\folder3')
data = read.csv("file.csv")
data

Cela a résolu le problème pour moi. 

6
Mr. Phil
  1. Enregistrer sous Excel maintiendra le fichier ouvert et le verrouillera afin que vous ne puissiez pas l'ouvrir. Fermez le fichier Excel ou vous ne pourrez plus l'utiliser en mode R.
  2. Indiquez le chemin complet et échappez les barres obliques inverses read.csv("c:\\users\\JoeUser\\Desktop\\JoesData.csv")
4
Svun

Le package speedR (https://r-forge.r-project.org/projects/speedr/) pourrait constituer un autre moyen de lire Excel, notamment le nouveau format xlsx. C'est un importateur de données interactif et visuel. Outre l'importation, vous pouvez filtrer (sous-ensemble) les objets existants à partir de l'espace de travail R.

1
ilhami visne

J'ai eu le même problème et lorsque j'ai vérifié les propriétés du fichier dans l'explorateur de fichiers, le message suivant s'affiche:

"Sécurité: ce fichier provient d'un autre ordinateur et peut être bloqué pour protéger cet ordinateur"

Vous cliquez sur le bouton "Débloquer" et ... vous pouvez accéder au fichier depuis R sans problème, en utilisant simplement la fonction read.csv () et depuis le répertoire spécifié comme répertoire de travail, même si ce n'est le répertoire du fichier auquel vous accédez.

0

Mon problème était très simple, le répertoire de travail n’était pas le répertoire "Source" imprimé lors de l’exécution du fichier. Pour résoudre ce problème, vous pouvez utiliser getwd() et setwd() pour que vos liens relatifs fonctionnent, ou simplement utiliser un chemin complet lors de l'ouverture du fichier csv.

print(getwd()) # Where does the code think it is?
setwd("~/Documents") # Where do I want my code to be?
dat = read.csv("~/Documents/Data Visualization/expDataAnalysis/one/ac1_survey.csv") #just make it work!
0
James L.

Je viens d'avoir ce problème et je suis d'abord passé à un autre répertoire, puis est retourné et le problème a été résolu. 

0
user5398097

MAC OS C'est arrivé à moi aussi. J'ai simplement choisi dans la barre d'outils R MISC, puis choisi Modifier le répertoire de travail. J'ai pu choisir le répertoire dans lequel le fichier .csv a été enregistré. Lorsque je suis retourné à la ligne de commande et que j'ai tapé getwd (), le répertoire complet a été mis à jour et correct, et la fonction read.csv a finalement fonctionné. 

0
lil

cela fonctionne pour moi, en accédant aux données depuis la racine. utilisez une double barre oblique pour accéder à l'adresse. 

dataset = read.csv('C:\\Users\\Desktop\\Machine Learning\\Data.csv')
0
Andrey Cls