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

  • H3Ctic (old channel)

    H3Ctic (old

    23 Mart 2011
  • LatinNinja99

    LatinNinja99

    28 EKİM 2011
  • Press Start

    Press Start

    4 HAZİRAN 2006