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

  • Official Android Tips

    Official And

    23 EYLÜL 2009
  • guillaume2111's channel

    guillaume211

    19 Kasım 2006
  • khloe brooks

    khloe brooks

    25 Temmuz 2011