2012-10-02 26 views
14

Estoy corriendo Windows XP Pro y R versión 2.15.1 R se instala en la siguiente carpeta:de error: ' R' es un escape no reconocida en cadena de caracteres de partida "C: R"

C:\Program Files\R\R-2.15.1

estoy tratando de crear una función que lee en un archivo .csv de este modo:

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

me sale el error

Error: '\R' is an unrecognized escape in character string starting "C:\R"

¿hay un proble m con mi estructura de directorios/convenciones de nomenclatura de carpetas?

Respuesta

22

Tiene que escapar del \ ya que es un caracter de escape.

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

2

Tienes que escapar de tus barras diagonales inversas. intente doblarlos: c: \\ xxx \\ classes \\ R_Prog \\ etc.

13

Como nadie sugirió una barra inclinada sin embargo, me permite hacer lo que:

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

encuentro barras diagonales "fácil en el ojo", ya que hace caminos más consistente a través de los sistemas operativos, y tampoco necesitas escapar de ellos. Lo que significa que guarda un byte completo cada vez. Yippie.

5

Nadie ha sugerido file.path todavía. Esto concatenar una cadena entre sí para formar una ruta de archivo utilizando un separador específico de la plataforma (por defecto es / en las ventanas)

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

He descubierto que tanto el \ (escapar de la)

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

y the/solutions work:

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

Personalmente, me resulta más fácil utilizar este último.

+1

Esta respuesta no agrega ninguna información nueva que las otras respuestas ya dan. –

Cuestiones relacionadas