wake-up-neo.net

Fehler in Datei (Datei, "rt"): Verbindung kann nicht geöffnet werden

Ich bin neu bei R, und nachdem ich diesen Fehler ausführlich untersucht habe, kann ich immer noch keine Lösung dafür finden. Hier ist der Code. Ich habe mein Arbeitsverzeichnis überprüft und sichergestellt, dass sich die Dateien im richtigen Verzeichnis befinden. Bin dankbar. Vielen Dank

pollutantmean <- function(directory, pollutant = "nitrate", id= 1:332)            
{                 if(grep("specdata",directory) ==1) 
            {
                    directory <- ("./specdata")
            }
            mean_polldata <- c()
            specdatafiles <- as.character(list.files(directory))
            specdatapaths <- paste(directory, specdatafiles, sep="")
                            for(i in id) 
                    {
                    curr_file <- read.csv(specdatapaths[i], header=T, sep=",")
                    head(curr_file)
                    pollutant
                    remove_na <- curr_file[!is.na(curr_file[, pollutant]), pollutant]
                    mean_polldata <- c(mean_polldata, remove_na)
                    }
            {
                    mean_results <- mean(mean_polldata)
                    return(round(mean_results, 3))
            }
} 

Der Fehler, den ich bekomme, ist unten:

Error in file(file, "rt") : cannot open the connection

file(file, "rt")

read.table(file = file, header = header, sep = sep, quote = quote, 
    dec = dec, fill = fill, comment.char = comment.char, ...)

read.csv(specdatapaths[i], header = T, sep = ",")

pollutantmean3("specdata", "sulfate", 1:10)

In addition: Warning message:
In file(file, "rt") :
  cannot open file './specdata001.csv': No such file or directory
28
ldeassis

Sie müssen directory <- ("./specdata") in directory <- ("./specdata/") ändern. 

Bezogen auf Ihr aktuelles Arbeitsverzeichnis suchen Sie nach der Datei 001.csv, die sich in Ihrem specdata-Verzeichnis befindet. 

Diese Frage ist ohne Kontext kaum zu beantworten, da Sie uns hier nicht die Struktur Ihres Arbeitsverzeichnisses zur Verfügung gestellt haben. Zum Glück für Sie, ich habe bereits R Programming auf Coursera genommen, also habe ich diese Hausaufgabenfrage bereits gemacht. 

13
capt-calculator

Stellen Sie Ihr Arbeitsverzeichnis eine Ebene/Ordner höher ein. Wenn es beispielsweise bereits festgelegt ist als: 

setwd("C:/Users/Z/Desktop/Files/RStudio/Coursera/specdata")

gehen Sie eine Ebene zurück und setzen Sie es wie folgt: 

setwd("C:/Users/Z/Desktop/Files/RStudio/Coursera")

Machen Sie also nicht den Ordner "specdata" als Arbeitsverzeichnis. 

9
Abi

Ich habe einfach viel Zeit damit verbracht, zu verstehen, was an meinem Code auch falsch war ...

Es scheint einfach zu sein, wenn Sie Windows verwenden.

Wenn Sie Ihre Datei "blabla.txt" nennen, dann nennen sie Windows "blabla.txt.txt" ... Das Gleiche gilt für CSV-Dateien. Windows erstellt also eine Datei mit dem Namen "001.csv.csv", wenn Sie aufgerufen haben es "001.csv"

Wenn Sie Ihre CSV-Datei erstellen, benennen Sie sie einfach in "001" um und öffnen Sie sie in R mit read.table("/absolute/path/of/directory/with/required/001.csv").

Für mich geht das.

7
IceCriime

Der Grund, warum Sie diesen Fehler sehen, ist vermutlich, weil RStudio den Pfad Ihres Arbeitsverzeichnisses verloren hat.

(1) Gehe zur Sitzung ...

(2) Arbeitsverzeichnis einstellen ...

(3) Verzeichnis wählen ...

-> Dann erscheint ein Fenster.

-> Wählen Sie den Ordner, in dem Sie Ihre Daten speichern.

Dies ist der Weg ohne Code, mit dem Sie Ihr Arbeitsverzeichnis ändern. __ Hoffe, das kann Ihnen helfen.

 enter image description here

2
BetterTeng

Wenn Sie beim Zugriff auf eine Datei einen solchen Fehler erhalten, sollten Sie die Funktion file.exists("file_path/file_name") verwenden. Diese Funktion gibt TRUE zurück, wenn die Datei vorhanden ist und zugreifbar ist, andernfalls False.

1
akzhere

schließen Sie Ihr R-Studio und führen Sie es erneut als Administrator aus. Das hat mir den Zauber gebracht. Ich hoffe, es funktioniert für Sie und alle, die dies ebenfalls durchmachen.

1
Joshua Jumbo

Verwenden Sie setwd(), um in das entsprechende Verzeichnis zu wechseln. Verwenden Sie nur Dateinamen, um auf Dateien im Arbeitsverzeichnis zuzugreifen. Navigieren Sie in einem Ordner oben mit "../<filename>".

1
Rishiraj Surti

Wenn Sie unter Windows laufen, versuchen Sie, R oder R Studio als Administrator auszuführen, um die Einschränkungen des Windows-Betriebssystems zu vermeiden.

1
Frank Tiernan

Ich hatte das gleiche Problem. Ich entfernte die Erweiterung vom Dateinamen. Beispiel: Mein Dateiname wurde als xyz gespeichert. csv. Ich habe es als Xyz gespeichert.

0
niti sethi

Ich habe meine R-Code-Datei von einem Freund erhalten und konnte den Befehl read.csv nicht ausführen. Wenn ich jedoch den gleichen Befehl (read.csv) in eine neue R-Skriptdatei kopiert, ist er einwandfrei ausgeführt.

Der folgende Befehl wurde nicht in einer von meinem Freund freigegebenen R-Code-Datei ausgeführt. Das Arbeitsverzeichnis, der Dateiname usw. waren alle korrekt, da ich eine neue R-Skriptdatei erstellt und den folgenden Befehl ausgeführt habe.

           df <- read.csv("file.csv",header=TRUE,stringsAsFactors = FALSE,strip.white = 
           TRUE,sep = ',')

issue/resolution: Ich habe mit der rechten Maustaste auf die R-Code-Datei geklickt und die Datei freigegeben und auf die Schaltfläche "Speichern" geklickt. Das Problem wurde behoben Wenn sich Ihre R-Code-Datei im Downloads-Ordner in Windows befindet, wechseln Sie zu einigen anderer Ordner.

 enter image description here

0
Tokci

Ich habe diese Fehlermeldung erhalten und sie auf die einfachste Weise behoben, die ich konnte. Ich legte meine CSV-Datei in einem Dateiordner auf meinem Desktop ab, öffnete den Desktop im Fenster neben der Konsole von RStudio und öffnete dann meine Datei dort und markierte das Kontrollkästchen neben der CSV-Datei. Klicken Sie auf das Menü oben in diesem Fenster, um dieses als Arbeitsverzeichnis festzulegen ... wahrscheinlich das einfachste für SUPER-Anfänger wie mich :)

0

Ich habe diesen Fehler erhalten und festgestellt, dass RStudio auf meinem Windows-Computer versucht, \ Als Escape-Symbol zu verwenden. Daher musste es durch \\ Ersetzt werden, um den Fehler zu beheben.

Probieren Sie die Funktion file.exists Mit Ihrem Pfad aus, z.

file.exists("D:\\R\\path_to_file.csv")
0

Dieser Fehler tritt auch auf, wenn Sie versuchen, das Ergebnis von getwd () direkt im Pfad zu verwenden. Das Problem ist das Fehlen des "/" am Ende. Versuchen Sie den folgenden Code:

projectFolder <- paste(getwd(), "/", sep = '')

Die Paste () dient dazu, den Schrägstrich am Ende zu verketten.

0
Guannan Shen