就像SAS一样,我可以做到
put @5 value1
@12 "="
@24 estimate1
;
Run Code Online (Sandbox Code Playgroud)
我可以在R中使用像"cat"这样的函数来打印出定位的值和对象吗?
如果我的问题清楚,请告诉我.
提前致谢!
这是一个猜测.这会创建一个长空字符串,然后通过substr将值放入其中:
fixput <- function(...,nchar=80){
s=paste0(rep(" ",nchar),collapse="")
args=list(...)
for(arg in seq(1,length(args),by=2)){
substr(s,args[arg],nchar)=as.character(args[arg+1])
}
s
}
Run Code Online (Sandbox Code Playgroud)
用法:
> value1=1.234
> estimate1=pi
> fixput(5, value1, 12, "=", 24, estimate1)
[1] " 1.234 = 3.14159265358979 "
Run Code Online (Sandbox Code Playgroud)
注意它返回一个字符串,所以如果你想在脚本中输出cat它就可以了.还要注意插值值很长时会发生什么:
> value1=pi
> fixput(5, value1, 12, "=", 24, estimate1)
[1] " 3.14159=65358979 3.14159265358979 "
Run Code Online (Sandbox Code Playgroud)