Skip to content

Instantly share code, notes, and snippets.

View robsyme's full-sized avatar

Robert Syme robsyme

View GitHub Profile
nextflow.preview.topic = true
workflow {
def statham = new groovy.json.JsonSlurper()
Channel.topic('model_updates')
.tap { updates }
.map { path -> statham.parseText(path.text) }
.until { obj -> obj?.score > 100 }
.tap { limit }
@robsyme
robsyme / main.nf
Created November 20, 2024 21:46
Example Genotyping script using new workflow output
#!/usr/bin/env nextflow
nextflow.preview.output = true
/*
* Pipeline parameters
*/
// Primary input (file of input files, one per line)
params.reads_bam = "${projectDir}/data/sample_bams.txt"
// Output directory
>HWR61437.1 MAG TPA: tetrahydromethanopterin S-methyltransferase subunit E, partial [Clostridia bacterium]
ALMGAAATIAGAAEDLESDIGSMSNPNSQVQLAPQMGHLHRMFNKAISGEPVQMGTLAGIAGSVAYVLIG
SVHLPVIMSIAAGGFIAALFHTAFATTSYLGRIVGQSQFNQPVFMDVITSHLGPIAAHGFIVTFCIVGLS
YLMNTVLQPTHPFPLPLLAVLWGITIGAIGSSTGDVHYGAEREYQTYPFGGGIPVAIHGDITTKAELGAR
NSIDVVHFCAKFGGPVTGFCFGLIVFLSFWVTVVFGPTGGVIAGLVIILLLIILNNRIEIFARNSYGPYK
E
@robsyme
robsyme / main.nf
Created March 28, 2024 22:47
Publishing oddities
#!/usr/bin/env nextflow
params.outdir = 'results'
params.all = false
workflow {
First()
First.out.value | Second
Second.out.value | Third
@robsyme
robsyme / main.nf
Created March 28, 2024 22:11
Publication behaviour example
#!/usr/bin/env nextflow
params.outdir = 'results'
params.all = false
workflow {
First()
First.out.value | Second
Second.out.value | Third
process A {
input: val(name)
output: tuple val(name), path("*")
script: "echo hello $name > greeting.${name}.txt"
}
process B {
input: val(name)
output: tuple val(name), path("*")
script: "echo goodbye $name > farewell.${name}.txt"
#!/usr/bin/env nextflow
nextflow.enable.dsl=2
nextflow.preview.recursion=true
params.input = 'data/*.dat'
process ScannerLightly {
input:
path datfile_accumulator
val meta_accumulator
@robsyme
robsyme / bar
Created September 9, 2022 21:22
#!/usr/bin/env ruby
require 'json'
require 'optparse'
options = {}
OptionParser.new do |opt|
opt.on('--report FILENAME') { |report| options[:report] = report }
end.parse!
@robsyme
robsyme / main.nf
Last active August 23, 2022 19:57
process A {
input:
val(i)
output:
path("output.${i}.txt")
"echo hello $i > output.${i}.txt"
}
class Dog {
final String name
Dog(String name) {
this.name = name
}
@Override
public int hashCode() {
return name.hashCode()