Devo chiamare un database che abbia caratteri di sottolineatura nei nomi delle tabelle in un blocco R in knitr. Ci sono un paio di migliaia di nomi di tabelle, e cambiare i nomi sarebbe una seccatura enorme. Qualcosa di simile:Passare il carattere di sottolineatura in knitr Codice R
<<classRun,fig=FALSE,print=FALSE,echo=FALSE>>=
getdat = function(nbr1,nbr2){
library(RODBC)
database.dsn1<-c("db")
database.user1<-c("username")
database.password1<-c("password")
channel<-odbcConnect(database.dsn1, database.user1, database.password1)
dat = sqlQuery(channel,paste("select * from table_",nbr1,"_",nbr2, sep=""))
}
@
<< results='asis', echo = FALSE>>=
dat = getdat(10,20)
print(dat)
@
ottengo l'errore che mi manca un $ ("Missing $ inserita la dicitura") a causa della sottolineatura in "table_10_20". Ho giocato molto con l'aggiunta di "\ $ \" e "\ $ \", lo nominate. Ho anche giocato con cat() e paste(), citazioni singole e virgolette. Eventuali suggerimenti? Grazie in anticipo per il vostro aiuto. Sto usando Ubuntu 11.10 e chiamando knitr da RStudio con pdfLaTeX, se questo è importante.
Avrete anche di sospendere l'istruzione SQL con un punto e virgola –