После дикой гусиной погони с множеством попыток Google и попыток поиска, я думаю, что нашел, как решить эту проблему.
Шаги, предпринятые для решения проблемы:
install.packages("ggplot2",dependencies = TRUE)
install.packages("Rcpp")
Однако, хотя вышеупомянутая команда успешно загружает Rcpp, по какой-то причине она не может взорвать ZIP-файл и установить это в моей библиотеке библиотеки R, ссылаясь на следующую ошибку:
пакет «Rcpp» успешно распакован и проверены суммы MD5 Предупреждение в install.packages: невозможно переместить временную установку «C:\root_Prgs \ Data_Science_SW\r\r-3.2.3 \ library \ file27b8ef47b6d\rcpp 'to' C:\root_Prgs \ Data_Science_SW\r\r-3.2.3 \ library\rcpp '
Загруженные двоичные пакеты находятся в папке C: \ Users \ MY_ USER_ID \ AppData \ Local \ Temp\rtmp25XQ0S \ download_packages
blockquote>
- Обратите внимание, что вышеприведенный вывод говорит «Предупреждение», но на самом деле это указывает на невозможность установки пакета Rcpp успешно в течение репозиторий. Затем я использовал Инструменты -> Установить пакеты -> Из ZIP-файла и указал на местоположение «загруженных бинарных пакетов» в сообщении выше -
C:\Users\MY_USER_ID\AppData\Local\Temp\Rtmp25XQ0S\downloaded_packages\Rcpp_0.12.3.zip
- Это привело к успешной установке Rcpp в мою папку R\r-3.2.3 \ library, тем самым гарантируя, что Rcpp теперь доступен, когда я пытаюсь загрузить библиотеку для ggplot2. Я не мог сделать этот шаг в прошлом, потому что моя предыдущая установка R вывела бы ошибку, заявив, что Rcpp не может быть импортирован. Тем не менее, эта же команда работала после того, как я удалил и переустановил R, что является ODD. install.packages ("C: /Users/MY_USER_ID/AppData/Local/Temp/Rtmp25XQ0S/downloaded_packages/Rcpp_0.12.3.zip", repos = NULL, type = "win.binary") пакет «Rcpp» успешно распакован и суммы MD5 checked`
- Наконец-то я смог успешно загрузить библиотеку ggplot2.
library(ggplot2)
Используйте функцию re.escape()
для этого:
escape (string)
Возвращаемая строка со всеми неалфавитными спицами; это полезно, если вы хотите сопоставить произвольную литеральную строку, которая может иметь в ней метасимволы регулярного выражения.
blockquote>Простейший пример, поиск любого присутствия предоставленной строки, необязательно сопровождаемого 's', и вернуть объект соответствия.
def simplistic_plural(word, text): word_or_plural = re.escape(word) + 's?' return re.match(word_or_plural, text)
Вы можете использовать re.escape () :
re.escape (string) Возвращаемая строка со всеми неалфавитами обратной косой черты; это полезно, если вы хотите сопоставить произвольную литеральную строку, которая может содержать метасимволы регулярного выражения.
blockquote>>>> import re >>> re.escape('^a.*$') '\\^a\\.\\*\\$'
Попробуйте:
\ Q и \ E в качестве якорей
Поместите условие Or в соответствие с полным словом или регулярным выражением.
Ref Ссылка: Как совместить целое слово, которое включает специальные символы в регулярном выражении
К сожалению, re.escape()
не подходит для заменяющей строки:
>>> re.sub('a', re.escape('_'), 'aa')
'\\_\\_'
Решение состоит в том, чтобы поместить замену в лямбда:
>>> re.sub('a', lambda _: '_', 'aa')
'__'
, потому что возвращаемое значение лямбда обрабатывается re.sub()
как литеральная строка.
repl
для re.sub
является строкой, а не регулярным выражением; применение re.escape
к нему не имеет никакого смысла в первую очередь.
– tripleee
29 January 2018 в 07:54
repl
не является простой строкой, он анализируется. Например, re.sub(r'(.)', r'\1', 'X')
вернет X
, а не \1
.
– Flimm
20 April 2018 в 13:45
repl
: stackoverflow.com/q/49943270/247696
– Flimm
20 April 2018 в 13:54