Проблема с назначением обратной косой черты в строке в R - PullRequest
1 голос
/ 19 сентября 2019

У меня проблемы с назначением строкового символа для объекта, содержащего обратную косую черту в R. Идея состоит в том, что я хочу создать вывод для Latex, поэтому в моем выводе есть такие символы, как "{".

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

list1 <- list()
list1[[1]] <- 0.166
list1[[2]] <- 0.232

Я хочу объединить их следующим образом (присвоение объекту):

x <- NULL
for (i in 1:2) {
  x <- c(x,paste0("{",list1[[i]],"}"))
}

В этомВ случае, если у меня есть следующий вывод: "{0.166}" "{0.232}"

Но я хочу иметь это для читаемости латекса: "\{0.166\}" "\{0.232\}"

Я не могу просто добавить "\" в строку, поэтому я попыталсяиспользуя "\\", но он печатает две полосы, а не только одну.

Я также попытался использовать функцию cat(), которая, кажется, работает:

x <- NULL
for (i in 1:2) {
  x <- c(x,cat("\\","{",list1[[i]],"\\","}",sep=""))
}
x

Но здесь у меня есть две проблемы: сначала он просто печатает вывод, он не сохраняет его вмой объектВывод на печать: \{0.166\}\{0.232\}

Я попытался использовать capture.output(), но результат снова с двумя полосами: "\\{0.166\\}" "\\{0.232\\}"

Вторая проблема заключается в том, что мне нужно разделить каждое число ивывод с cat, кажется, все соединяет.

Может кто-нибудь помочь мне с этим?

...