Skip to content

Instantly share code, notes, and snippets.

View geocarvalho's full-sized avatar
🐼

George Carvalho geocarvalho

🐼
View GitHub Profile
@geocarvalho
geocarvalho / list_from_bed.py
Last active May 23, 2017 12:35
list_from_bed.py
import pandas as pd
import numpy as np
import os
import sys
bed_file = sys.argv[1]
name = bed_file.split('.')[0]
#import bed into dataframe
header = ['Chr', 'Start', 'End', 'Gene']
@geocarvalho
geocarvalho / fastq_to_file.py
Created May 23, 2017 12:32
Script to organize FASTQs in directories and construct a CSV file input on QIAGEN site taking as argument the bioinfo worklist
import os
import sys
import pandas as pd
#Get the worklist as a parameter
worklist_bioinfo = sys.argv[1]
#Create DataFrame from worklist
header = ['pool', 'analysis_type', 'exame', 'control', 'gender']
worklist_df = pd.read_csv(worklist_bioinfo, header=None, names=header)
@geocarvalho
geocarvalho / reverse-sample-sheet.py
Created May 23, 2017 12:33
Format samplesheet to use in bcl2fastq
from Bio.Seq import Seq
import pandas as pd
import csv
import sys
import os
def reverse_complement(sequence):
"""
Give me the sequence and I give you the reverse-complement of it
"""
@geocarvalho
geocarvalho / tmux_commands.md
Last active April 16, 2021 14:55
Tmux help commands

session management

tmux ls (or tmux list-sessions)
tmux new -s session-name
Ctrl-b d Detach from session
tmux attach -t [session name] or tmux a -t [session name]
tmux kill-session -t session-name

Ctrl-b c Create new window
Ctrl-b d Detach current client

Comandos Vim

  • insert texto
i, I  # inserir, inserir no começo da linha
a, A  # inserir na linha seguinte, inserir no final
o, O  # inserir abaixo, inserir acima
S  # remove linha e inseri
  • sair de qualquer modo com esc
@geocarvalho
geocarvalho / cnv_regions.py
Last active October 24, 2017 04:21
Annotate exons from bed file present in CNVs from exomedepth
#/usr/bin/env python3
'''
Using exomedepth result and a bed file, organize a txt file with the exons in
the CNV region
usage:
python cnv_regions.py <path/to/exome_depth_output.txt> <path/to/bed_file.bed> <padding>
'''
__author__ = 'George Carvalho'
@geocarvalho
geocarvalho / descomplicando-docker.md
Last active August 11, 2021 13:31
Material de docker do "descomplicando docker 2016"

Descomplicando Docker 2016


O que é Docker

  • Docker é uma plataforma Open Source escrito em Go, que é uma linguagem de programação de alto desempenho desenvolvida dentro do Google, que facilita a criação e administração de ambientes isolados.

Containers vs VMs

@geocarvalho
geocarvalho / learn_git_branching.md
Created July 1, 2018 22:03
Learn_git_branching

Introdução aos commits no Git

  • Um commit em um repositório git registra uma fotografia (snapshot) de todos os arquivos no seu diretório. É como um grande copy&paste, mas ainda melhor!
  • O Git tem por objetivo manter os commits tão leves quanto possível, de forma que ele não copia cegamente o diretório completo toda vez que você commita. Ele pode (quando possível) comprimir um commit como um conjunto de mudanças (ou um "delta") entre uma versão do seu repositório e a seguinte.
  • O Git também mantém um histórico de quando ocorreu cada commit. É por isso que a maioria dos commits tem ancestrais acima de si -- que indicamos usando setas na nossa visualização. Manter a história é ótimo para todos que trabalham no projeto!
  • Há muito para aprender, mas por enquanto pense nos commits como snapshots do seu projeto. Os commits são muito leves, e mudar de um para outro é extremamente rápido!
  • Vejamos o que isso significa na prática. Abaixo, temos uma vis
@geocarvalho
geocarvalho / code_cnv_bed.md
Created April 15, 2019 16:01
Commands to create bed inputs for exomedepth and devicnv using normal bed

Exomedepth:

$ awk -F"__" '$1=$1' OFS="\t" PAHC44_1_CDHS-17427Z-2274_sorted.bed | cut -f1,2,3,4 > qiaseq_PAHC44_1_CDHS-17427Z-2274_no_header.bed

DeviCNV:

$ echo -e "Amplicon_ID\tChr\tAmplicon_Start\tAmplicon_End\tInsert_Start\tInsert_End\tGene\tTranscript\tExon\tPool" > qiaseq_PAHC44_1_CDHS-17427Z-2274_no_header.devicnv.bed $ awk -F"__" '$1=$1' OFS="\t" PAHC44_1_CDHS-17427Z-2274_sorted.bed | awk '{ print $4"."$7"\t"$1"\t"$2"\t"$3"\t"$2"\t"$3"\t"$4"\t"$4"\t"$7"\t"Pool1}' >> qiaseq_PAHC44_1_CDHS-17427Z-2274_no_header.devicnv.bed

@geocarvalho
geocarvalho / liftover_bed.py
Last active July 26, 2023 17:06
(up) need to add other columns
#!/usr/bin/python3
from pyliftover import LiftOver
import pandas as pd
import argparse
import mapply
import sys
import os
mapply.init(