问题标签 [ruffus]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
272 浏览

python - 需要在 Ruffus 管道中运行函数之前制作一组文件

我正在使用 ruffus 编写管道。我有一个被并行调用多次的函数,它创建了几个文件。我想创建一个函数“combineFiles()”,在创建所有这些文件后调用该函数。由于它们在集群上并行运行,因此它们不会一起完成。我编写了一个函数“getFilenames()”,它返回需要创建的文件名集,但我怎样才能让 combineFiles() 等待它们出现呢?

我尝试了以下方法:

我也试过装饰器:

但这也不起作用。在生成 getFilenames 给出的文件之前,combineFiles 仍然会被错误地调用。如何使 combineFiles 以这些文件的存在为条件?

谢谢。

0 投票
2 回答
373 浏览

python - Pweave 可以和 Ruffus 一起玩吗?

我对开发自我记录的管道很感兴趣。

我可以将Ruffus任务包装在Pweave块中吗?

我感觉 Ruffus 装饰器正在抛弃 Pweave:

也许有解决方法?

0 投票
1 回答
52 浏览

python - 如何在 Ruffus 管道中使用子目录

Ruffus 管道文档似乎假设一个人的代码和数据在同一个目录中。所有示例都有输入和输出文件说明符,没有任何相对路径。如果要转换的文件不在当前目录中,应该如何修改下面的语法?

0 投票
0 回答
159 浏览

python - 使用 Ruffus 的 Python makefile 管道

我正在尝试使用 Ruffus 将多个脚本与 python 框架一起流水线化。

我从我的 main.cpp 文件中调用了多个 .cpp 和 .h 文件。

我的 makefile 在 shell 中运行得很好。

如何使用可以调用和编译我的脚本的 Ruffus 创建基于 python 的管道?

我的生成文件如下所示:

0 投票
1 回答
151 浏览

python - 带有内部输入的 Ruffus 管道

我想用 Python 的 Ruffus 包创建一个管道,我正在努力解决它最简单的概念。两个任务应该一个接一个地执行。第二个任务取决于第一个任务的输出。在 Ruffus 文档中,所有内容都是为从外部文件导入/导出而设计的。我想处理字典等内部数据类型。

问题是@follows 不接受输入,@transform 不接受字典。我错过了什么吗?

最终,管道应该在一个类中组合一组函数,这些函数可以随时更新类对象。

0 投票
1 回答
116 浏览

python - 在 Python 2.7 中使用 Ruffus 库,just_print 标志失败

我在 Python 2.7 中有一个 ruffus 管道,但是当我用-nor调用它时,--just_print它仍然运行所有实际任务,而不是像预期的那样打印管道。我:
* 没有-n可以取代内置参数的参数(尽管我确实有其他命令行参数)
* 有一堆带有@transform()@merge()装饰器的函数 * 以调用
结束管道run_pipeline()

有没有其他人遇到过这个问题?非常感谢!

0 投票
0 回答
60 浏览

python - 如何在 var python / Ruffus 上进行刷新

我是生物信息学领域的新手,也是 Python 初学者。

我正在使用一个名为 Ruffus 的框架来运行一个管道,使文件通过工具导航以获得有趣的输出。

在我的管道的一部分(第三步)中,我需要做一些解决方法来让 Ruffus 考虑我的文件:使用的工具几乎可以任意更改输出名称。

我的问题如下:我必须第一次运行管道以使其运行到第三步,它说每个文件都已完成。然后当我重新运行时,它从第 3 次到最后。我认为问题是我使用了与特定模式有关的 glob,该 glob 函数应该在我的脚本开始时运行,但我正在寻找的文件 (.*avinput) 尚未创建。然后,一旦我重新运行它,它们就可以了,然后该过程可以继续进行。但这是不现实的。

我如何“强制”这样的 var 等到特定时刻运行,或者在达到某个步骤时重新运行它?

最好的,