2013-06-17 33 views
5

Mam ten kodDlaczego otrzymuję ten danych Błąd zapisu do pliku

myvector <- c(3.45235, 1.32525, ... , 2.41351) # some numbers 
write(myvector, "C:/mypath/myfile.txt")   # I use "/" instead of "\" 

i pojawia się następujący błąd:

Error in file(file, ifelse(append, "a", "w")) : cannot open the connection In addition: warning message: In file(file, ifelse(append, "a", "w")) : cannot open file 'C:/mypath/myfile.txt' : No such file or directory

czytałem this tutorial, ale nie mogę understant co się stało z moim kodem. Dowolny pomysł?

edit:

Jak @dickoa wskazał, muszę istniejącą ścieżkę zapisu pliku, więc starałem się uprościć w następujący sposób:

file.exists("C:/") 
write(myvector, "C:/myfile.txt") 

Zaskakująco: P ścieżka "C: /" istnieje (wynik jest PRAWDZIWY), ale pojawia się podobny błąd:

Error in file(file, ifelse(append, "a", "w")) : cannot open the connection In addition: warning message: In file(file, ifelse(append, "a", "w")) : cannot open file 'C:/mypath/myfile.txt' : Permission denied

+2

Jaki jest wynik 'file.exists (" C:/mypath ")'? – dickoa

+0

@dickoa Otrzymuję błąd w eval (expr, envir, enclos): nie mogę znaleźć funkcji "file.exist" – 888

+0

Mój zły jest "s" na końcu. Zmieniłem mój komentarz: – dickoa

Odpowiedz

13

Wiem @dickoa odpowiedział na pytanie w komentarzach, ale w celu zapewnienia co najmniej jednej odpowiedzi tutaj, chciałem przejść przez kilka prostych gier z R w systemie Windows.

  1. Podczas korzystania z systemu Windows nadal trzeba używać ukośników w przód dla ścieżek. W R, ukośniki odwrotne są zarezerwowane dla wartości wychodzących. Tak więc ścieżka w R wygląda tak: C:/path/to/my/directory
  2. W nowszych wersjach systemu Windows C: \ jest chroniony przed zapisami według kont użytkowników. Jeśli chcesz pisać do C: \, musisz być administratorem. Można to zrobić, klikając prawym przyciskiem myszy ikonę R w systemie Windows i wybierając polecenie "Uruchom jako administrator". Należy to również zrobić podczas instalowania pakietów. Możesz nie mieć uprawnień do instalowania pakietów w niektórych wersjach systemu Windows, jeśli nie uruchamiasz go jako administrator.
  3. Jeśli nie chcesz uruchamiać R jako administrator, a chcesz pisać do plików, domyślnie będziesz mieć prawa do katalogu C:/Users/username/.

Cała zasługa @dickoa ponownie za odpowiedź w pierwszej.

Powodzenia!

+0

Używaj '\\ \ 'like' C: \\ Users \\ username'. Dla wszystkich tych leniwych facetów, którzy lubią kopiować i wklejać, tak jak ja, po prostu skopiuj ścieżkę z eksploratora do konsoli po uruchomieniu 'readline()', który ucieknie przed ukośnikiem odwrotnym i możesz go skopiować z wyjścia konsoli. – Tino

-1

Właśnie podzielił tę odpowiedź z nieco lepszego wyjaśnienia here, ale sedno jest to:

Spróbuj otworzyć plik w programie Excel, aby sprawdzić, czy jest zablokowany przez innego użytkownika. Otrzymywałem te same komunikaty o błędach i mogłem zorientować się, że kolega miał plik otwarty na swoim komputerze, co uniemożliwiło mi edycję.

Powiązane problemy