私は開発中のパッケージに関数を持っています。入力データが関連しているとは思わないので、投稿していません。私は、パッケージからこの関数に特定の関数をインポートすることを推奨しています。これは、ほとんどの場合、data.tableを除いて正常に動作します。私はエラーを取得、上記のように行うとrパッケージ機能内でdata.tableを@importする方法
#' @importFrom data.table 'setDT' 'rowid' '.SD'
#' @keywords Sankey
#' @export
SurveySankey <- function(dfw, y,PatientID) {
# Create the Sankey diagrams
Sankey <-
dcast(data.table::setDT(dfw)[, .SD, PatientID],
PatientID ~ rowid(PatientID),
value.var = y)
}
は:
1. Error: SurveySankey (@test.R#400) -------------------------------------------------------------------------------------------------
object '.SD' not found
を代わりに@importfrom
文の場合、私は
#' @import data.table
を使用し、それは正常に動作します。関数名の一部が他のパッケージと衝突するため、後者を使用したくありません。 .SD
はどうやってインポートできますか?これはインポート可能な関数ではないでしょうか?
私は試しませんでしたが、(https://blog.rstudio.com/2015/10/29/roxygen2-5-0-0/)役立つ新しいタグ「@rawNamespace」が見つかりました。おそらく '@rawNamespace" importFrom(data.table、.SD、.N、.I、.GRP、.BY、.EACHI)のようなものが動作します(https://cran.r-project.org/docも参照してください) –
あなたのコードの '@ importFrom'タグの綴りを誤って忘れましたか(ここではSOだけです)? →首都F! –
param "dfw"の再現可能なデータセットが役立つでしょう。まったく同じエラーメッセージを引き起こす問題があります... Thx :-) –