test.ts 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. import fs from 'fs'
  2. import { analysisTranscript, openSam } from '.'
  3. (async()=>{
  4. const baseDir = '/home/thomas/Turbine-B/Data_2/RNAseqBWA/'
  5. const rnaDBPath = [...Array(10).keys()].map(n => '/home/thomas/NGS/ref/ncbi/RNA/human.' + (n+1) + '.rna.gbff')
  6. const geneDBPath = [...Array(7).keys()].map(n => '/home/thomas/NGS/ref/ncbi/GENES/refseqgene.' + (n+1) + '.genomic.gbff')
  7. const dirs = fs.readdirSync(baseDir)
  8. /*const allResults = []
  9. for (const dir of dirs) {
  10. console.log(dir)
  11. const caseDir = baseDir + dir + '/'
  12. const proper = caseDir + 'bwa_mem_properly_on_human_NM.sorted.bam'
  13. const splitters = caseDir + 'bwa_mem_splitters_on_human_NM.sam'
  14. const discordants = caseDir + 'bwa_mem_discordants_on_human_NM.sam'
  15. const res = await analysisTranscript('NM_017617.5', proper, splitters, discordants, rnaDBPath)
  16. allResults.push({dir,res})
  17. }
  18. await fs.promises.writeFile('test/frommAcc.json', JSON.stringify(allResults, null, 4))*/
  19. const allCounts = []
  20. for (const dir of dirs) {
  21. const r = await openSam(baseDir + dir + '/' + 'bwa_mem_properly_on_human_NM.sorted.bam', '' , true)
  22. allCounts.push([dir, ...r].join('\t'))
  23. console.log(allCounts);
  24. }
  25. console.log(allCounts);
  26. await fs.promises.writeFile('test/allCounts.tsv', allCounts.join('\n'))
  27. /*const res = JSON.parse((await fs.promises.readFile('test/frommAcc.json')).toString())
  28. const lines = []
  29. console.log(res[0].dir);
  30. const txt = res.map((entry:any) => ([entry.dir,...entry.res.exons.reduce((p:any,c:any) => [...p, c.counts.all[0]],[])].join('\t'))).join('\n')
  31. await fs.promises.writeFile('test/CountsByExon.tsv', txt)*/
  32. })()