Функция data.table tables() запускает некоторые из моих . Функции Rprofile

В моем . Rprofile У меня есть следующие две строки, определенные в моем . Во-первых,

makeActiveBinding(".refresh", function() { system("R"); q("no") }, .GlobalEnv)
makeActiveBinding('.rm', function() {rm(list=ls(envir = .GlobalEnv),envir=.GlobalEnv); gc()}, .GlobalEnv)

Они, как правило, безвредны, если только я не наберу их случайно! Первый создает функцию .refresh, которая завершает работу и перезапускает сеанс R. Второй опустошает глобальную окружающую среду. Однако при использовании функции tables()из data.tableэти две функции выполняются, что не совсем желательно.

На данный момент я удалил их из своего . Первый, но мне любопытно, есть ли способ избежать этого. Нарушающие строки в функции tables():

tt = objects(envir = env, all.names = TRUE)
ss = which(as.logical(sapply(tt, function(x) is.data.table(get(x, 
    envir = env)))))
5
задан Justin 27 June 2012 в 16:38
поделиться