如何改变的R结构的价值RCPP功能
问题描述:
我在R,像这样的结构向量的列表的列表:如何改变的R结构的价值RCPP功能
A=list();
for(i in 1:n){
A[[i]]=list
for(j in 1:m){
A[[i]][[j]]=rep(0,m);
}
}
和当我通过A分成RCPP功能,
RcppExport SEXP func(SEXO RA){
Rcpp:: List A(RA)
as<Rcpp::IntegerVector>(as<Rcpp::List>(A(i))(j))(n)=2;
}
但A(i)(j)(n)
的值不会改变,仍然为0,任何人都知道什么是问题?
感谢 我不能够改变你先贴RCPP-devel的列表(这是一个好主意)上的A[[i]][[j]][[n]]
答
值。我在那里回答。
您似乎对正确的语法有一些基本的误解;我建议你稍微研究一下文档。此外,RcppExamples软件包还有一些您想要在此尝试的内容。
向谁低估了这一点:尼斯没有评论。该操作是困惑;我们写了八个独立的pdf文件加上无数的博客和列表文章 - 我不能也不会在这里重复这些。 A(i))(j))(n)'是完全错误的。 – 2011-05-06 11:20:35
我也列举了一个例子。这里可能有一个微妙的事情是,rep(0,m)创建一个* numeric *向量,所以当你做时,数值向量变成一个整数向量,它被修改,然后被丢弃。如果您以的形式进行操作,则代码“有效”。虽然我不会那样写...... –
2011-05-09 09:09:40