SORU
16 EYLÜL 2011, Cuma


Hangi anne-baba arasındaki farktır.() kare ve üst.() env R; nasıl başvuru çağrı farklıdır?

Eğer birisi basit bir örnekle göstermek yardımcı olur?

Ayrıca, nerede parent.env() ve yardımcısı yerine parent.frame() versa kullanmak yararlı olur.

CEVAP
16 EYLÜL 2011, Cuma


parent.env kapatılması (örneğin, fonksiyon) tanımlanan bir ortamdır. parent.frame kapatılması başlatıldığı ortamıdır.

f = function() 
     c(f=environment(), defined_in=parent.env(environment()),  
       called_from=parent.frame())
g = function() 
     c(g=environment(), f())

ve sonra

> g()
$g
<environment: 0x14060e8>

$f
<environment: 0x1405f28>

$defined_in
<environment: R_GlobalEnv>

$called_from
<environment: 0x14060e8>

Sıradan bir ölümlü hiç gerçekten onları kullanmak ister, ama bu kavramları burada sözlü kapsamını anlamak yararlı olduğunda emin değilim

> f = function() x
> g = function() { x = 2; f() }
> h = function() { x = 3; function() x }
> x = 1
> f()
[1] 1
> g()
[1] 1
> h()()
[1] 3

ya gizemli 'hesap' ?parent.frame Giriş R. örneği Ayrıntıları bölümünün ilk paragraf şeyleri netleştirmek olabilir. banka

Ortamları R yaygındır, örneğin, search() yol (yaklaşık) ortamlarda birlikte kardeş - ^ zincirleme . üst ilişkisi. Bazen env = new.env(parent=emptyenv()) sembol-Yukarı Bak ... normalde env[["x"]] ilk ** 14 env'nın üst ise bulunamadı. görünürdü atlatmak görür Aynı şekilde, <<- atama parent.env başlangıç görünüyor. R nispeten yeni bir referans sınıfı uygulaması bu fikirleri hangi semboller (örnek alanları ve yöntemleri) bulunabilir örneğe özel bir ortam tanımlamak için kullanır.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BSA

    BSA

    9 NİSAN 2012
  • National Geographic

    National Geo

    7 Mayıs 2006
  • sdasmarchives

    sdasmarchive

    2 HAZİRAN 2010