R Sweave 用户定义函数
我正在编写一个小函数,给出组合的条件密度和经验累积分布图。
cdpl<-function(df,dep,indep){
attach(df)
cdplot(dep~indep,xlab=deparse(substitute(indep)),ylab=deparse(substitute(dep)))
g<-indep
ec<-ecdf(indep)
lines(knots(ec),as.numeric(names(table(ec(g)))),col="red",lw=3)
detach(df)
}
这工作正常,但是当我尝试编织它时,我的运气就完了......
<<fig1,fig=T>>=
par(mfrow=c(1,2))
print(cdpl(tre,A,B))
print(cdpl(tre,A,C))
@
Sweave("re.rnw") 写入文件 re.tex 处理代码块...
1:逐字回显术语 eps pdf (label=fig1)
错误:块 1 (label=fig1) model.frame.default(formula = dep ~ indep) 中的错误: 变量“dep”的类型(列表)无效,
当它在 sweave 之外正常工作时怎么会出现这种情况?
//M
I´m writing up a small function giving a combined conditional density and empirical cumulative distribution plot.
cdpl<-function(df,dep,indep){
attach(df)
cdplot(dep~indep,xlab=deparse(substitute(indep)),ylab=deparse(substitute(dep)))
g<-indep
ec<-ecdf(indep)
lines(knots(ec),as.numeric(names(table(ec(g)))),col="red",lw=3)
detach(df)
}
This works fine, however when I try to sweave it my luck is all out...
<<fig1,fig=T>>=
par(mfrow=c(1,2))
print(cdpl(tre,A,B))
print(cdpl(tre,A,C))
@
Sweave("re.rnw")
Writing to file re.tex
Processing code chunks ...
1 : echo term verbatim eps pdf (label=fig1)
Error: chunk 1 (label=fig1)
Error in model.frame.default(formula = dep ~ indep) :
invalid type (list) for variable 'dep'
How can this be when it works allright outside sweave?
//M
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
而不是附加(导致所有类型的问题)将数据框作为 cdplot 中的数据参数传递,并查看是否有效。
instead of attaching (causes all types of problems) pass the data frame as the data argument in cdplot and see if that works.