Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
7
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Open sidebar
Mirrors
biopet.biopet
Commits
a2b3d004
Commit
a2b3d004
authored
Mar 20, 2017
by
Peter van 't Hof
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Adding flagstats as tsv
parent
3ab8f781
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
19 additions
and
10 deletions
+19
-10
biopet-tools/src/main/scala/nl/lumc/sasc/biopet/tools/bamstats/BamStats.scala
...n/scala/nl/lumc/sasc/biopet/tools/bamstats/BamStats.scala
+3
-0
biopet-tools/src/main/scala/nl/lumc/sasc/biopet/tools/bamstats/Histogram.scala
.../scala/nl/lumc/sasc/biopet/tools/bamstats/Histogram.scala
+1
-1
biopet-tools/src/main/scala/nl/lumc/sasc/biopet/tools/bamstats/Stats.scala
...main/scala/nl/lumc/sasc/biopet/tools/bamstats/Stats.scala
+7
-7
biopet-tools/src/main/scala/nl/lumc/sasc/biopet/tools/flagstat/FlagstatCollector.scala
...l/lumc/sasc/biopet/tools/flagstat/FlagstatCollector.scala
+6
-0
biopet-tools/src/test/scala/nl/lumc/sasc/biopet/tools/bamstats/CountsTest.scala
...scala/nl/lumc/sasc/biopet/tools/bamstats/CountsTest.scala
+1
-1
biopet-tools/src/test/scala/nl/lumc/sasc/biopet/tools/bamstats/HistogramTest.scala
...la/nl/lumc/sasc/biopet/tools/bamstats/HistogramTest.scala
+1
-1
No files found.
biopet-tools/src/main/scala/nl/lumc/sasc/biopet/tools/bamstats/BamStats.scala
View file @
a2b3d004
...
...
@@ -103,6 +103,9 @@ object BamStats extends ToolCommand {
val
stats
=
waitOnFutures
(
processUnmappedReads
(
bamFile
)
::
contigsFutures
.
map
(
_
.
_2
))
stats
.
flagstat
.
writeAsTsv
(
new
File
(
outputDir
,
"flagstats.tsv"
))
stats
.
insertSizeHistogram
val
statsWriter
=
new
PrintWriter
(
new
File
(
outputDir
,
"bamstats.json"
))
val
totalStats
=
stats
.
toSummaryMap
val
statsMap
=
Map
(
...
...
biopet-tools/src/main/scala/nl/lumc/sasc/biopet/tools/bamstats/Histogram.scala
View file @
a2b3d004
...
...
@@ -43,7 +43,7 @@ class Counts[T](_counts: Map[T, Long] = Map[T, Long]())(implicit ord: Ordering[T
}
/** Write histogram to a tsv/count file */
def
writeToTsv
(
file
:
File
)
:
Unit
=
{
def
write
Histogram
ToTsv
(
file
:
File
)
:
Unit
=
{
val
writer
=
new
PrintWriter
(
file
)
writer
.
println
(
"value\tcount"
)
counts
.
keys
.
toList
.
sorted
.
foreach
(
x
=>
writer
.
println
(
s
"$x\t${counts(x)}"
))
...
...
biopet-tools/src/main/scala/nl/lumc/sasc/biopet/tools/bamstats/Stats.scala
View file @
a2b3d004
...
...
@@ -50,13 +50,13 @@ case class Stats(flagstat: FlagstatCollector = new FlagstatCollector(),
def
writeStatsToFiles
(
outputDir
:
File
)
:
Unit
=
{
this
.
flagstat
.
writeReportToFile
(
new
File
(
outputDir
,
"flagstats"
))
this
.
flagstat
.
writeSummaryTofile
(
new
File
(
outputDir
,
"flagstats.summary.json"
))
this
.
mappingQualityHistogram
.
writeToTsv
(
new
File
(
outputDir
,
"mapping_quality.tsv"
))
this
.
insertSizeHistogram
.
writeToTsv
(
new
File
(
outputDir
,
"insert_size.tsv"
))
this
.
clippingHistogram
.
writeToTsv
(
new
File
(
outputDir
,
"clipping.tsv"
))
this
.
leftClippingHistogram
.
writeToTsv
(
new
File
(
outputDir
,
"left_clipping.tsv"
))
this
.
rightClippingHistogram
.
writeToTsv
(
new
File
(
outputDir
,
"right_clipping.tsv"
))
this
.
_5_ClippingHistogram
.
writeToTsv
(
new
File
(
outputDir
,
"5_prime_clipping.tsv"
))
this
.
_3_ClippingHistogram
.
writeToTsv
(
new
File
(
outputDir
,
"3_prime_clipping.tsv"
))
this
.
mappingQualityHistogram
.
write
Histogram
ToTsv
(
new
File
(
outputDir
,
"mapping_quality.tsv"
))
this
.
insertSizeHistogram
.
write
Histogram
ToTsv
(
new
File
(
outputDir
,
"insert_size.tsv"
))
this
.
clippingHistogram
.
write
Histogram
ToTsv
(
new
File
(
outputDir
,
"clipping.tsv"
))
this
.
leftClippingHistogram
.
write
Histogram
ToTsv
(
new
File
(
outputDir
,
"left_clipping.tsv"
))
this
.
rightClippingHistogram
.
write
Histogram
ToTsv
(
new
File
(
outputDir
,
"right_clipping.tsv"
))
this
.
_5_ClippingHistogram
.
write
Histogram
ToTsv
(
new
File
(
outputDir
,
"5_prime_clipping.tsv"
))
this
.
_3_ClippingHistogram
.
write
Histogram
ToTsv
(
new
File
(
outputDir
,
"3_prime_clipping.tsv"
))
}
def
toSummaryMap
=
{
...
...
biopet-tools/src/main/scala/nl/lumc/sasc/biopet/tools/flagstat/FlagstatCollector.scala
View file @
a2b3d004
...
...
@@ -32,6 +32,12 @@ class FlagstatCollector {
protected
[
FlagstatCollector
]
var
totalCounts
:
Array
[
Long
]
=
Array
()
protected
[
FlagstatCollector
]
var
crossCounts
=
Array
.
ofDim
[
Long
](
1
,
1
)
def
writeAsTsv
(
file
:
File
)
:
Unit
=
{
val
writer
=
new
PrintWriter
(
file
)
names
.
foreach
(
x
=>
writer
.
println
(
x
.
_2
+
"\t"
+
totalCounts
(
x
.
_1
)))
writer
.
close
()
}
def
loadDefaultFunctions
()
{
addFunction
(
"All"
,
record
=>
true
)
addFunction
(
"Mapped"
,
record
=>
!
record
.
getReadUnmappedFlag
)
...
...
biopet-tools/src/test/scala/nl/lumc/sasc/biopet/tools/bamstats/CountsTest.scala
View file @
a2b3d004
...
...
@@ -86,7 +86,7 @@ class CountsTest extends TestNGSuite with Matchers {
val
tsvFile
=
File
.
createTempFile
(
"counts."
,
".tsv"
)
tsvFile
.
deleteOnExit
()
c1
.
writeToTsv
(
tsvFile
)
c1
.
write
Histogram
ToTsv
(
tsvFile
)
val
reader
=
Source
.
fromFile
(
tsvFile
)
reader
.
getLines
().
toList
shouldBe
List
(
"value\tcount"
,
"1\t1"
,
"2\t2"
,
"3\t3"
)
...
...
biopet-tools/src/test/scala/nl/lumc/sasc/biopet/tools/bamstats/HistogramTest.scala
View file @
a2b3d004
...
...
@@ -64,7 +64,7 @@ class HistogramTest extends TestNGSuite with Matchers {
val
tsvFile
=
File
.
createTempFile
(
"counts."
,
".tsv"
)
tsvFile
.
deleteOnExit
()
c1
.
writeToTsv
(
tsvFile
)
c1
.
write
Histogram
ToTsv
(
tsvFile
)
val
reader
=
Source
.
fromFile
(
tsvFile
)
reader
.
getLines
().
toList
shouldBe
List
(
"value\tcount"
,
"1\t1"
,
"2\t2"
,
"3\t3"
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment