ID EN
Vector & List

list2env

R Base 3.6.2 🇮🇩 Bahasa Indonesia

Dari daftar bernama x, buat lingkungan yang berisi semua komponen daftar sebagai objek, atau “penetapan ganda” dari x ke lingkungan yang sudah ada sebelumnya.

Syntax

R
list2env(x, envir = NULL, parent = parent.frame(),
         hash = (length(x) > 100), size = max(29L, length(x)))

Arguments

Parameter Deskripsi
x a list, where names(x) must not contain empty ("") elements.
envir an environment or NULL.
parent (for the case envir = NULL): a parent frame aka enclosing environment, see new.env.
hash (for the case envir = NULL): logical indicating if the created environment should use hashing, see new.env.
size (in the case envir = NULL, hash = TRUE): hash size, see new.env.

Return Value

Lingkungan, baik yang baru dibuat (seperti oleh new.env) jika argumen envir adalah NULL, jika tidak, lingkungan yang diperbarui envir. Karena lingkungan tidak pernah diduplikasi, argumen envir juga diubah.

Details

Ini akan sangat lambat untuk input besar kecuali hashing digunakan pada lingkungan tersebut. Lingkungan harus memiliki entri yang diberi nama secara unik, namun daftar yang diberi nama tidak perlu: jika daftar memiliki nama duplikat, maka elemen terakhir dengan nama tersebut akan digunakan. Nama kosong menimbulkan kesalahan.

Contoh

Example
R
# NOT RUN {
L <- list(a = 1, b = 2:4, p = pi, ff = gl(3, 4, labels = LETTERS[1:3]))
e <- list2env(L)
ls(e)
stopifnot(ls(e) == sort(names(L)),
          identical(L$b, e$b)) # "$" working for environments as for lists

## consistency, when we do the inverse:
ll <- as.list(e)  # -> dispatching to the as.list.environment() method
rbind(names(L), names(ll)) # not in the same order, typically,
                           # but the same content:
stopifnot(identical(L [sort.list(names(L ))],
                    ll[sort.list(names(ll))]))

## now add to e -- can be seen as a fast "multi-assign":
list2env(list(abc = LETTERS, note = "just an example",
              df = data.frame(x = rnorm(20), y = rbinom(20, 1, pr = 0.2))),
         envir = e)
utils::ls.str(e)
# }

See Also

environment new.env as.environment; further assign. The (semantical) “inverse”: as.list.environment.