由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Statistics版 - 求教:R里面怎么屏蔽一个子程序打印到屏幕的输出?
相关主题
How to run my R job as a batch job ?batch?
如何在matlab中直接call R呢?[合集] 请问如何把一个SAS PROGRAM做成可执行文件
新手求教:linux下怎么跑R文件?帮忙 R CODE
怎么在linux下提交matlab任务?跑sas程序问题
R question-run on clusterCan R perform scheduled batch job run?
求教linux bash 命令象R那样处理数据请教一个试验设计的问题
请问:为什么if then 在do loop 中就不起作用了呢?怎么避免sas batch模式打开sas文件
[合集] SAS 程序 Editor 窗口显示 在 running,实际上是死了,请教平时都是在windows 下用SAS,和在UNIX 下用SAS差别大不大
相关话题的讨论汇总
话题: 输出话题: sink话题: 子程序话题: output话题: 打印
进入Statistics版参与讨论
1 (共1页)
g********r
发帖数: 8017
1
用别人的包,都是C写的.一个子程序自动打印到屏幕很多信息,又不好改.做起
simulation来满屏的乱字.有什么general的办
法屏蔽一个子程序的输出么?
D******n
发帖数: 2836
2
eval?

【在 g********r 的大作中提到】
: 用别人的包,都是C写的.一个子程序自动打印到屏幕很多信息,又不好改.做起
: simulation来满屏的乱字.有什么general的办
: 法屏蔽一个子程序的输出么?

b*******x
发帖数: 100
3
。。什么类型的输出?你是只想要return的value吗?
如果是warning和error信息,可以用 try(exprs,T) 来抑制
如果不是,是程序内的打印输出,他们一般又自己的参数比如trace=F,verbose=F,来抑
制这种输出
如果没有相关参数,试一试sink(),把信息结果送进一个临时文件。
偶知道的就这些了。。。
b*******x
发帖数: 100
4
假设你没有参数能控制,这里有个函数模仿一下,打印一个结果,但是你只想要return
的那个value
> myfun <- function(x){print(x); return(x+1)}
直接运行,又output 1的输出,你不想要他
> z <- myfun(1)
[1] 1
就创造个临时文件,把输出都扔进去
> tf <- tempfile()
> sink(tf)
> z <- myfun(1)#没有显示那个1
> sink()
> unlink(tf)
> z #但是你有那个返回值
[1] 2
z**k
发帖数: 378
5
f <- function() print("hello cat!")
f()
sink("stdout")
f()
sink()
f()

【在 g********r 的大作中提到】
: 用别人的包,都是C写的.一个子程序自动打印到屏幕很多信息,又不好改.做起
: simulation来满屏的乱字.有什么general的办
: 法屏蔽一个子程序的输出么?

g********r
发帖数: 8017
6
谢谢楼上几位.我去学学sink()
g********r
发帖数: 8017
7
TNND. 这个程序不知道是什么底层输出. sink()光把标准输出给除掉了.那些乱七八糟
的灰字一个也没少:( 别人的C程序搞起来太难了.忍着了.
D******n
发帖数: 2836
8
try this argument
sink(.........,type = c("output", "message"))

【在 g********r 的大作中提到】
: TNND. 这个程序不知道是什么底层输出. sink()光把标准输出给除掉了.那些乱七八糟
: 的灰字一个也没少:( 别人的C程序搞起来太难了.忍着了.

g********r
发帖数: 8017
9
多谢.还是不灵.

【在 D******n 的大作中提到】
: try this argument
: sink(.........,type = c("output", "message"))

D******n
发帖数: 2836
10
其实你就让它输出乱码呗。
到时候parse一下输出文件就可以。

【在 g********r 的大作中提到】
: 多谢.还是不灵.
g********r
发帖数: 8017
11
嗯也还好.不是乱码,是很多不需要的信息.现在我把需要的sink()出来,连parse也不用:)
就是刷屏厉害,影响速度.mac里面输出是实时的,几毫秒的运算还要等小半秒的显示.

【在 D******n 的大作中提到】
: 其实你就让它输出乱码呗。
: 到时候parse一下输出文件就可以。

D******n
发帖数: 2836
12
。。。。我的意思是用batch mode,眼不见为净
R CMD BATCH xxx.R

用:)

【在 g********r 的大作中提到】
: 嗯也还好.不是乱码,是很多不需要的信息.现在我把需要的sink()出来,连parse也不用:)
: 就是刷屏厉害,影响速度.mac里面输出是实时的,几毫秒的运算还要等小半秒的显示.

g********r
发帖数: 8017
13
明白了。谢谢。

【在 D******n 的大作中提到】
: 。。。。我的意思是用batch mode,眼不见为净
: R CMD BATCH xxx.R
:
: 用:)

s*r
发帖数: 2757
14
it has output buffer. it may hold the output for a while and output to
screen in batches

用:)

【在 g********r 的大作中提到】
: 嗯也还好.不是乱码,是很多不需要的信息.现在我把需要的sink()出来,连parse也不用:)
: 就是刷屏厉害,影响速度.mac里面输出是实时的,几毫秒的运算还要等小半秒的显示.

1 (共1页)
进入Statistics版参与讨论
相关主题
平时都是在windows 下用SAS,和在UNIX 下用SAS差别大不大R question-run on cluster
help please: automatic run SAS in a batch mode.thanks求教linux bash 命令象R那样处理数据
问一个不产生SAS Log的命令请问:为什么if then 在do loop 中就不起作用了呢?
Any limits about SAS in batch modes[合集] SAS 程序 Editor 窗口显示 在 running,实际上是死了,请教
How to run my R job as a batch job ?batch?
如何在matlab中直接call R呢?[合集] 请问如何把一个SAS PROGRAM做成可执行文件
新手求教:linux下怎么跑R文件?帮忙 R CODE
怎么在linux下提交matlab任务?跑sas程序问题
相关话题的讨论汇总
话题: 输出话题: sink话题: 子程序话题: output话题: 打印