首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >针织品缓存

针织品缓存
EN

Stack Overflow用户
提问于 2015-08-10 20:32:33
回答 1查看 2.4K关注 0票数 1

我有多个R块,所以我使用缓存和依赖项。第一个块运行第3和第4块所依赖的内容。然而,第二个块在加载的R.Data上做了一些绘图,其中第一个块中使用了相同的变量,但是值不同。我尝试将cache=FALSE设置为第2块,并将其设置为针对第3和第4块的TRUE,但在编译第3块时会出现错误,因为当第2块被编译时,某些变量将被重写,这与块不一致。1我无法将数据和代码放在这里,因为它很大,但下面是一个示例:

代码语言:javascript
复制
# first save this as a workspace 

ls <- list(vars=c("x","y","z"), data=c(1,5,6,9,5,4))
m <- mean(ls$data)
 maximum <- max(ls$data)
 ind <- which(ls$vars=="z")
 save.image("~/Desktop/test-Workspace.RData")

然后使用这个Rmd文档

代码语言:javascript
复制
---
title: "Caching Example"

output:
  pdf_document

---

```{r chunk-1,echo=FALSE, cache=TRUE}

ls <- list(vars=c("x","y"),data=c(1,5,6,9,5,4),dens=runif(100,0.0,1.0))

M <- -平均数(ls$data)

最大值<- max(ls$data)

ind <-哪个(ls$vars==“z”)

地块(密度(ls$den),col=2)

代码语言:javascript
复制
```{r chunk-2,fig.width=7.5,cache=FALSE, fig.height=7.5,echo=FALSE}

load("~/Desktop/test-Workspace.RData")

地块(ls$data)

印刷(M)

代码语言:javascript
复制
```{r chunk-3,echo=FALSE,dependson="chunk-1", cache=TRUE}

地块(密度(1美元))

印刷(M)

d<- (ls$data-m)/maximum

代码语言:javascript
复制
```{r chunk-4,include=FALSE,dependson=c("chunk-1","chunk-3")}

#x应该又是2

if (长度(D)=0)

印刷(D)

代码语言:javascript
复制

我怎么才能做到这一点而没有错误呢?

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-08-10 22:15:52

将工作区加载到环境中。做第二块,就像这样:

代码语言:javascript
复制
my_env = new.env()
load("test-Workspace.RData", envir = my_env)

with(my_env, plot(ls$data))
with(my_env, print(m))

我想你不会有问题的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31928603

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档