Re: [R] assigning to a list in a package environment

From: Sean Davis <>
Date: Fri 13 May 2005 - 00:27:56 EST

On May 12, 2005, at 10:09 AM, Gabor Grothendieck wrote:

> On 5/11/05, Sean Davis <> wrote:
>> I have a list in a package environment
>> assign('refflat',list(),pos='package:locPkg')
>> to which I would like to make assignments like:
>> refflat[['a']] <- read.table('fileA.txt')
>> refflat[['b']] <- read.table('fileB.txt')
>> I am doing this to guard against a local version of refflat hanging
>> around, as I want to refresh it with each new session (and so, want to
>> store it in the package environment). I just can't quite get hot to
>> make that work so that I am storing to the package:refflat rather than
>> any in .GlobalEnv.
> Try this:
> locPkg <- as.environment("package:locPkg")
> locPkg$refflat <- list()
> locPkg$refflat[["a"]] <- read.table("fileA.txt")


Thanks. That will do the trick, I think. Now, just one more question as followup if I may? If I am executing a function that was defined in locPkg, how can I determine dynamically what environment I am in? Them I could do something like

myFun <- function (x) {

   # code
   locPkg <- as.environment( .... )
   # more code

where '....' is replaced dynamically by the package environment of the package in which the function myFun is defined. The goal is to make the code a bit more portable.

Again, thanks for the help.

Sean mailing list PLEASE do read the posting guide! Received on Fri May 13 00:38:21 2005

This archive was generated by hypermail 2.1.8 : Fri 03 Mar 2006 - 03:31:44 EST