Как заменить "неожиданный экранированный символ" в R

Когда я пытаюсь проанализировать JSON из символьного объекта из URL-адреса Facebook, у меня появляется "Ошибка в fromJSON(данные): неожиданный экранированный символ '\o' в позиции 130". Проверь это:

library(RCurl)
library(rjson)
data <- getURL("https://graph.facebook.com/search?q=multishow&type=post&limit=1500", cainfo="cacert.perm")
fbData <- fromJSON(data)
Error in fromJSON(data) : unexpected escaped character '\o' at pos 130

#with RSONIO also error
> fbData <- fromJSON(data)
Erro em fromJSON(content, handler, default.size, depth, allowComments,  : 
invalid JSON input

Есть ли способ заменить этот символ '\o', прежде чем я попытаюсь проанализировать JSON? Я попробовал gsub, но он не работал (или я делаю что-то не так).

datafixed <- gsub('\o',' ',data)
Error: '\o' is an unrecognized escape sequence in string starting with "\o"

Может кто-нибудь помочь мне с этим? Благодарю.

2 ответа

Вам нужно сбежать \ в вашем образце.

Пытаться

gsub('\\o',' ',data)

Вы могли бы сделать

fbData <- fromJSON(data,unexpected.escape = "keep")

вы увидите предупреждение

Warning message:
In fromJSON(individual_page, unexpected.escape = "keep") :
unexpected escaped character '\m' at pos 10. Keeping value.

если вы хотите, вы можете подавить предупреждение с помощью

suppressWarnings(fromJSON(data,unexpected.escape = "keep"))

surprise.escape: изменена обработка неожиданных экранированных символов. Значение обработки должно быть одним из "error", "skip" или "keep"; в случае неожиданных символов выведите ошибку, пропустите символ или оставьте символ

Вы можете найти более подробную информацию здесь - http://cran.r-project.org/web/packages/rjson/rjson.pdf

Другие вопросы по тегам