Подтвердить что ты не робот

Ошибка: '\ R' - это непризнанный выход в символьной строке, начинающийся с "C:\R"

Я запускаю Windows XP Pro и R Version 2.15.1 R установлен в следующей папке:

C:\Program Files\R\R-2.15.1

Я пытаюсь создать функцию, которая читает в. CSV файле так:

xxx <- function(id, directory, summarize = FALSE) {
    data <- read.table('C:\xxx\classes\R_Prog\specdata\data.csv')
    head(data)
}

Я получаю сообщение об ошибке

Ошибка: '\ R' - это нераспознанный выход в символьной строке, начинающийся с "C:\R"

Есть ли проблема с соглашениями об именах каталогов/папках?

4b9b3361

Ответ 1

Вам нужно избежать \, так как он сам является escape-символом.

read.table('C:\\xxx\\classes\\R_Prog\\specdata\\data.csv') head(data) }

Ответ 2

Пока никто не предложил косую черту, позвольте мне сделать это:

R> list.files("C:/opt", pattern="R")
[1] "R-current"  "R-library"  "R-local215" "RStudio"    "Rtools"    
R> 

Я нахожу косые черты "проще на глазу", поскольку это делает пути более согласованными между ОС, и вам также не нужно их избегать. Это означает, что вы каждый раз сохраняете целый байт. Yippie.

Ответ 3

Никто еще не предложил file.path. Это приведет к объединению строки вместе, чтобы сформировать путь к файлу с использованием разделителя платформы (по умолчанию это / в окнах).

file.path('c:', 'xxx', 'classes', 'R_prog','specdata', 'data.csv')
## [1] "c:/xxx/classes/R_prog/specdata/data.csv"

Ответ 4

Вам нужно избегать обратной косой черты. попробуйте удвоить их: c:\\xxx\\classes\\R_Prog\\и т.д.

Ответ 5

Я обнаружил, что и\(экранирование)

C:\\xxx\\classes\\R_Prog\\specdata\\data.csv

и работают/решения:

C:/xxx/classes/R_prog/specdata/data.csv

Мне лично легче использовать последнюю.