R işaretlemede (knitr paketi), belgenin gövdesinde bir kod yığınında hesaplanan bir değişkene erişebilir miyim?R işareti: Kod yığınından değişkene erişme (değişken kapsam)
cevap
Evet. Önceden değerlendirilmiş tüm değişkenleri satır içi olarak çağırabilirsiniz.
örn. Daha önce df <- data.frame(x=1:10)
bir yığın bir data.frame
oluşturulan olsaydı
`r max(df$x)`
10
Biliyorum bu soru olduğunu biliyorum R. dışındaki diller için geçerli olmadığını eklemek istiyorum çıkartır çözüldü ve R hakkında, ama belki de başka biri bu işe yarar:
Motor hariç = 'R' (varsayılan), tüm parçalar ayrı oturumlarda yürütülür, böylece değişkenler doğrudan paylaşılamaz d. Önceki parçalarda oluşturulan nesneleri kullanmak istiyorsak, genellikle bunları (yan etkiler olarak) dosyalara yazmamız gerekir. Bash motoru için, değişkenleri R'den bash'a (örnek) vermek için Sys.setenv() öğesini kullanabiliriz. Başka bir yaklaşım (deneysel) runr paketini kullanmaktır. R
Örnek:
x = 4
print(x)
## [1] 4
Python Örnek 2a):
x=1
print(x)
## 1
Python Örnek 2b):
print(x)
## Traceback (most recent call last):
## File "<string>", line 1, in <module>
## NameError: name 'x' is not defined
Sadece FYI.
Sen değişkene acces daha önce bu kadar
`r variable`
oluşturulan olabilir ama değişken sayısal ve bir pdf belgeye eklemek istiyorsanız, dize böylece
`r toString(variable)`
yılında değişkeni dönüştürmek Ama not yapmalıyım Bu, düz metin içinde kullanmak isterseniz, istenilmeyen olabilecek kod olarak dizgi olacak. “r” (max (df $ x)) 'de çalışmalı ve kod biçiminde değil. –
Teşekkürler @GavinSimpson. – Maiasaura