R не может справиться с нулевыми строками (\ 0) в символах, кто-нибудь знает, как с этим справиться?Более конкретно, я хочу хранить сложные объекты R в базе данных, используя соединение ODBC или JDBC.Поскольку сложные объекты R не так легко отобразить в кадры данных, мне нужна другая возможность для хранения таких объектов.Объектом может быть, например:
library(kernlab)
data(iris)
model <- ksvm(Species ~ ., data=iris, type="C-bsvc", kernel="rbfdot", kpar="automatic", C=10)
Поскольку> модель <не может быть сохранена непосредственно в базе данных, я использую функцию serialize (), чтобы получить двоичное представление объекта (чтобы сохранить его встолбец BLOB): </p>
serialModel <- serialize(model, NULL)
Теперь я хотел бы сохранить это через ODBC / JDBC.Для этого мне нужно строковое представление объекта, чтобы отправить запрос в базу данных, например, INSERT INTO.Поскольку в результате получается вектор типа raw vector, мне нужно преобразовать его:
stringModel <- rawToChar(serialModel)
И возникает проблема:
Error in rawToChar(serialModel) :
embedded nul in string: 'X\n\0\0\0\002\0\002\v\0......
R не может справиться с \ 0в строках.У кого-нибудь есть идеи как обойти это ограничение?Или, возможно, существует совершенно иной подход к достижению этой цели?
Заранее спасибо