0
調用dpois_raw C統計程序我試圖找出一種方法來調用stats包的「dpois_raw」例程而不是使用.Call .External或任何方式的「dpois」包裝。如何從R
「dpois_raw」未在程序包環境(stats:::C_*)
中列出,也沒有列出getDLLRegisteredRoutines("stats")
,所以我很可能運氣不佳,但我想知道某個R/C專家是否知道解決方法。
調用dpois_raw C統計程序我試圖找出一種方法來調用stats包的「dpois_raw」例程而不是使用.Call .External或任何方式的「dpois」包裝。如何從R
「dpois_raw」未在程序包環境(stats:::C_*)
中列出,也沒有列出getDLLRegisteredRoutines("stats")
,所以我很可能運氣不佳,但我想知道某個R/C專家是否知道解決方法。
dpois_raw
例程由Rmath.h
頭提供,它看起來並沒有真正作爲stats
包(或其他)的一部分公開;但是,它通過Rmath.h
標題提供給C/C++代碼。
最簡單的暴露方法是用您自己的C/C++代碼暴露該代碼,例如(代碼存根)
#include <R.h>
#include <Rmath.h>
SEXP my_dpois_raw(<...>) {
double result = dpois_raw(<...>);
return result;
}
此例程然後將被調用的自R與類似
.Call("my_dpois_raw", <...>)
見哈德利的r-pkgs部上在R封裝一些更多的信息使用編譯的代碼在包括C/C++代碼在R包中。
是的,似乎黑客的包裝是唯一的方法...我跳躍的解決方案,將開箱即用,但它似乎是不可能的。謝謝。 –