R에서 이상한 문제를 해결하기 위해 노력하고 있습니다. 이전 버전의 Rcpp R을 일부 C++와 통합하려면 (안타깝게도 업그레이드는 옵션이 아닙니다!) 사용하는 Rcpp는 오래된 RccpTemplate입니다. 그러나 문제가 거기에 있는지 의심 스럽습니다.R에서이 오류의 일반적인 경우는 무엇입니까? "SET_STRING_ELT()의 값은 '문자가 아닌'CHARSXP 여야합니다."
나는 대부분의 시간을 잘 실행 일부 R 코드를 가지고 있지만, 경우에 (특히 많은 양의 데이터를 처리 할 때)는 항상 목록 작업에 실패 Value of SET_STRING_ELT() must be a 'CHARSXP' not a 'character'
예와 신비 실패
res[["blabla"]] = r
그러나 내가 options(error=recover)
을 사용하고 오류가 발생하면 동일한 시도를 시도하면 아무 문제없이 할당을 수행 할 수 있습니다. C++은 수치 벡터만을 취급하며 실제로 실패한 배정 코드는 시간이 지남에 따라 멀리 떨어져 있습니다.
그래서 내 모호한 질문입니다. 그러한 행동의 가장 일반적인 원인은 무엇입니까? 나쁜 기억? 잘못된 개체 (아마도 나쁜 RcppResultSet
)?
platform i386-pc-solaris2.10
arch i386
os solaris2.10
system i386, solaris2.10
status
major 2
minor 10.1
year 2009
month 12
day 14
svn rev 50720
language R
재현 가능한 예제를 사용하면 조금 더 쉽게 도움을받을 수 있습니다. 어쨌든 몇 사람이 아직 소프트웨어 버전을 실행하고 있기 때문에 어려울 것입니다. –
나는 내가 실행하는 소프트웨어를 선택해야한다. S이 문제는 다소 재현하기가 어렵 기 때문에 메모리 손상과 관련이 있다고 생각된다. 제 질문은 당신이 비슷한 것을 가지고 싸운 적이 있습니까? 무슨 문제가 끝났어? 디버깅에서 약간의 지침이 있습니다. –
상상할 수 있듯이, 제 사용법은 우리가 비추천 Rcpp API라고 부르는 것에 초점을 맞추지 않습니다. 오류 메시지에 관해서는, 내가 본 적이 없다고 생각합니다. R에서 고정되었을 수도 있습니다. –