Estoy escribiendo un módulo Rcpp y me gustaría devolver como un elemento de la lista RcppResultSet una lista cuyos elementos son vectores. Por ejemplo, .Call("myfunc")$foo
debería ser algo como:¿Cómo creo una lista de vectores en Rcpp?
[[1]]
[1] 1
[[2]]
[1] 1 1
[[3]]
[1] 1 1 1
(las cifras exactas no son importantes aquí). El problema es que no conozco la forma correcta de hacerlo. Intenté pasar un vector<vector<int> >
pero esto construye una matriz tomando silenciosamente la longitud del primer vector como el ancho (¡incluso si la matriz está irregular!). Intenté construir un RcppList
, pero tuve dificultades para transmitir varios objetos (como RcppVector
) de forma segura en SEXP
s.
¿Alguien tiene consejos sobre las mejores prácticas para manejar estructuras complicadas como listas de vectores en Rcpp?
fresca, gracias! ¡Todo funciona si te apegas a las nuevas clases 'Rcpp :: ...'! –
Cool de hecho. Todavía necesito cocinar nuevas clases 'Rcpp :: Date' y' Rcpp :: Datetime' --- pero definitivamente puedes vivir sin los viejos 'RcppParams',' RcppResultSet', 'RcppVector', ... etc. Feel libre de contribuir nuevas pruebas unitarias o ejemplos, o adiciones a los documentos. Nos vemos en 'rcpp-devel' luego :) –
Me hace la vida más fácil. Aunque han pasado unos días desde que aprendí Rcpp pero no puedo imaginar volver al combo de R & C –