2012-06-05 90 views

回答

42

是的。你可以直接调用任何先前评估过的变量。

例如如果您以前在一大块创造了data.framedf <- data.frame(x=1:10)

`r max(df$x)` 

应该产生

10 
+12

但做笔记如果您希望以纯文本形式使用该代码,则该代码可能不是您想要的代码。 '我(max(df $ x))'应该也能工作,而不是以代码格式排版。 –

+0

谢谢@GavinSimpson。 – Maiasaura

3

我想补充一点,这是不是比R.其他语言,我知道这个问题是这样的解决和约R,但也许别人认为这有用:

除引擎='R'(默认),所有块在不同的会话中执行,所以变量不能直接共享d。如果我们想要使用以前的块创建的对象,我们通常必须将它们写入文件(作为副作用)。对于bash引擎,我们可以使用Sys.setenv()将变量从R输出到bash(示例)。另一种方法是使用(实验)运行程序包。

Source

实施例R:

x = 4 

print(x) 

## [1] 4 

Python的实施例2a):

x=1 
print(x) 

## 1 

Python的实施例2b):

print(x) 

## Traceback (most recent call last): 
## File "<string>", line 1, in <module> 
## NameError: name 'x' is not defined 

只是FYI。

0

您可以查看在可变以前创建这样

`r variable` 

但是,如果变量是数字,你想添加到PDF文档,你应该转换变量字符串,因此

`r toString(variable)`