> reshape2::acast(DF, Var1~Var2, value.var="value")
D E
A 1 3
B 2 4
C NA 5
以下按预期方式工作:
> reshape2::acast(DFa, Var1~Var2, value.var="value")
Aggregation function missing: defaulting to length
D E
A 2 1
B 1 1
C 0 1
对于执行聚合的情况,我更喜欢函数调用抛出错误而不是只写消息:
capture.output()
如何包装第二个调用以抛出错误而不是显示消息?
我已尝试过sink()
和test = subprocess.Popen(
'svn cat http://localhost/svn/WernerTest/JenkinsJobTemplates/trunk/smartTemplate.xml --username admin --password admin',
stdout=subprocess.PIPE, universal_newlines=True)
job = test.stdout.read().replace("@url@", "http://localhost/svn/WernerTest/TMS/branches/test1")
jenkins = subprocess.Popen(
'java -jar D:\\applications\\Jenkins\\war\\WEB-INF\\jenkins-cli.jar\\jenkins-cli.jar -s http://localhost:8080/ create-job test7',
stdin=subprocess.PIPE, universal_newlines=True)
jenkins.communicate(job)
的某些组合,但我希望在我的结果变量中得到调用的结果。
答案 0 :(得分:2)
消息是R中condition system的一部分,可以使用适当的函数进行处理。因此,这有效:
withCallingHandlers(reshape2::acast(DF, Var1~Var2, value.var="value"),
message = stop)
顺便说一句,这是强烈倾向于使用warning
和message
而不是cat
来做这些事情的原因。