有用と思われるが分類困難な Tips
タイトル通りのチップス集。他に適当な場所を思いついたら移動するかも知れません。
rm(list=ls()[!sapply(ls(), FUN=exists, mode="function")])
すべてのオブジェクトの消去は rm(list=ls()) です。rm(list=c("A","B")) はオブジェクト A,B を消去します。
ちなみになにをしているかというと、ls() で得られる総オブジェクト名の文字列ベクトルにたいし、exists 関数で function というモードかどうかを検査し、結果の論理値ベクトルを否定(従って関数オブジェクトだけが FALSE になる)し、それ以外の TRUE に対応するオブジェクトを rm 関数で消去。例えば現在の私のワーキング領域では次のようになっています。
> !sapply(ls(), FUN=exists, mode="function") A a b f fR fd TRUE TRUE TRUE FALSE FALSE TRUE fdd fg fgh fitlm0 fitlm1 fitlm3 FALSE FALSE FALSE TRUE TRUE TRUE fitlm4 fx i jj lR last.warning TRUE FALSE TRUE TRUE TRUE TRUE lm1 lm2 mf nlm.f nlm.f2 nlm1 TRUE TRUE FALSE TRUE TRUE FALSE nlm2 nlm3 nlm4 nlm5 nlm5.f op FALSE TRUE TRUE TRUE TRUE TRUE