pysam
Ajuda seu agente a ler e escrever arquivos genômicos. É essencial para trabalhar com dados de DNA e sequenciamento.
O que ela faz
Pysam é uma ferramenta que ajuda a ler e manipular arquivos genômicos complexos. Ele permite que você extraia informações específicas, filtre dados e escreva novos arquivos genômicos.
Quando usar
- ✓Quando você precisa ler ou escrever arquivos de dados genômicos como VCF, BAM ou FASTA.
- ✓Ao querer filtrar informações genéticas com base em critérios específicos.
- ✓Para obter resumos de qualidade ou contagens de dados genômicos.
Exemplo do que pedir para a IA
“Como posso filtrar um arquivo BAM para incluir apenas leituras com qualidade de mapeamento superior a 30?”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
Pysam funciona acessando diretamente os dados genômicos em um formato otimizado. Ele usa bibliotecas eficientes para ler e processar esses arquivos rapidamente, permitindo que você trabalhe com grandes volumes de dados genéticos.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add K-Dense-AI/scientific-agent-skills --skill pysamOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/K-Dense-AI/scientific-agent-skills/main/skills/pysam/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
pysam
Visão Geral
Use o pysam para acesso de baixo nível e em streaming a formatos genômicos suportados pelo HTSlib:
AlignmentFileeAlignedSegmentpara SAM/BAM/CRAMVariantFile,VariantHeadereVariantRecordpara VCF/BCFFastaFilepara FASTA indexado eFastxFilepara FASTA/FASTQ sequencialTabixFilepara tabelas BED/GFF/GTF/personalizadas comprimidas com BGZF e indexadas com tabixpysam.samtoolsepysam.bcftoolspara despachantes de comandos encapsulados
Linha de base upstream atual: pysam 0.24.1 (7 de setembro de 2026), encapsulando
HTSlib/samtools/bcftools 1.24. Leia references/sources.md antes de atualizar
orientações específicas de versão.
Instalação
Use a versão fixada para trabalho reproduzível:
uv pip install "pysam==0.24.1"
Confirme o tempo de execução:
import pysam
print(pysam.__version__) # 0.24.1
print(pysam.__samtools_version__) # 1.24
Rodas pré-compiladas estão disponíveis para plataformas macOS e Linux suportadas. Uma
compilação a partir do código fonte precisa de um compilador C e dependências de compilação do HTSlib; leia o
guia oficial de instalação vinculado em references/sources.md.
Decida Primeiro
Antes de escrever código:
- Identifique o formato real, compressão, ordem de classificação e índice disponível.
- Decida se as coordenadas são coordenadas numéricas do Python ou uma string de região. Não as misture.
- Para CRAM, identifique a montagem de referência exata e o FASTA.
- Prefira acesso a regiões indexadas; use iteração sequencial apenas quando pretendido.
- Preserve cabeçalhos ao escrever e escreva em um novo caminho por padrão.
- Declare a semântica de filtragem: qualidade de mapeamento/base, flags, tratamento de sobreposição, tratamento de duplicatas e limite de profundidade de pileup.
Para arquivos desconhecidos, comece com o inspetor somente leitura incluído:
python scripts/inspect_hts.py sample.bam
python scripts/inspect_hts.py cohort.vcf.gz
python scripts/inspect_hts.py reference.fa
Scripts Incluídos
| Script | Propósito | Chamada Típica |
|---|---|---|
scripts/inspect_hts.py |
Inspeção apenas de metadados para arquivos de alinhamento, variantes, FASTA, FASTQ e tabix | python scripts/inspect_hts.py sample.cram --reference ref.fa |
scripts/alignment_qc.py |
Contagens agregadas de leituras/QC em streaming como JSON | python scripts/alignment_qc.py sample.bam --max-records 100000 |
scripts/variant_summary.py |
Variantes em streaming, FILTER e resumo de genótipo como JSON | python scripts/variant_summary.py cohort.vcf.gz --region chr1:1-1000000 |
scripts/filter_alignments.py |
Filtra SAM/BAM/CRAM sem alterar a ordem dos registros | python scripts/filter_alignments.py input.bam output.bam --exclude-secondary |
Todos os scripts recusam sobrescrever saídas existentes. O filtro também recusa índices de saída obsoletos
e oferece --index --csi para contigs BAM grandes. A inspeção FASTA
requer um .fai existente; crie-o explicitamente com pysam.faidx() primeiro.
Execute cada um com --help para notas sobre coordenadas, índice e privacidade.
Exemplos usam nomes de arquivo ilustrativos e limiares específicos do ensaio. O conjunto sintético local exercita esses padrões de API no pysam 0.24.1; armazenamento remoto e conjuntos de dados biológicos não fazem parte dessa validação.
Contrato de Coordenadas
Coordenadas numéricas aceitas pelas APIs do pysam são baseadas em 0, meio-abertas. Isso
inclui argumentos numéricos AlignmentFile.fetch(), VariantFile.fetch(),
FastaFile.fetch(), TabixFile.fetch() e pileup().
Strings de região são no estilo samtools: baseadas em 1 e inclusivas.
# The same 100 bases:
bam.fetch("chr1", 99, 199) # [99, 199)
bam.fetch(region="chr1:100-199") # 1-based inclusive
O texto VCF usa POS baseado em 1, enquanto as propriedades do registro expõem ambos os sistemas:
record.pos # 1-based
record.start # 0-based inclusive
record.stop # 0-based exclusive
Leia references/coordinates_and_indexing.md para conversões de formato, semântica de sobreposição,
escolhas de índice e verificações de nome de contig.
Arquivos de Alinhamento
Use gerenciadores de contexto e modos explícitos:
import pysam
with pysam.AlignmentFile("sample.bam", "rb", threads=4) as bam:
for read in bam.fetch("chr1", 1_000, 2_000):
if (
not read.is_unmapped
and not read.is_secondary
and not read.is_supplementary
and read.mapping_quality >= 30
):
print(read.query_name, read.reference_start, read.cigarstring)
Use fetch(until_eof=True) para transmitir todos os registros na ordem do arquivo, incluindo
leituras não posicionadas e não mapeadas, sem exigir um índice:
with pysam.AlignmentFile("sample.bam", "rb") as bam:
…
Perguntas frequentes
O que são arquivos genômicos como VCF, BAM e FASTA?
São formatos de arquivo padrão usados para armazenar informações genéticas, como sequências de DNA, variações genéticas e dados de sequenciamento.
O que significa 'qualidade de mapeamento'?
É uma medida de quão confiante o software está de que uma sequência de DNA foi corretamente alinhada a uma referência genômica.
Preciso instalar algo para usar o Pysam?
Sim, você precisa instalar o Pysam em seu ambiente de programação. O texto sugere usar 'uv pip install "pysam==0.24.1"' para uma instalação confiável.
Detalhes
Descrição original do autor
Provides Python/HTSlib workflows for genomic files. Used when reading, querying, filtering, or writing SAM/BAM/CRAM, VCF/BCF, FASTA/FASTQ, or tabix data with pysam, including pileup, coverage, indexing, and CRAM references.
Popularidade
- Estrelas no GitHub
- 51 mil
- Posição no ranking
- #1954
- Licença
- MIT
- Atualizada em
- 15/10/2026
Comentários
- …
Mais skills deste repositório
13c-metabolic-flux
Estima fluxos metabólicos usando dados de rastreamento de isótopos de carbono-13. É útil para analisar o metabolismo celular e vias bioquímicas.
K-Dense-AI/scientific-agent-skills
adaptyv
Projeta experimentos de caracterização de proteínas usando a API Adaptyv. Ele ajuda a estimar custos, enviar sequências e monitorar resultados de laboratório.
K-Dense-AI/scientific-agent-skills
aeon
Realiza tarefas de aprendizado de máquina em séries temporais. É útil para classificar, prever, detectar anomalias e encontrar padrões em dados sequenciais.
K-Dense-AI/scientific-agent-skills
alphagenome
Consulta efeitos genômicos pré-calculados para variantes genéticas. Ele fornece pontuações e explicações para entender o impacto das variantes no genoma.
K-Dense-AI/scientific-agent-skills
Skills parecidas
data-throughput-accelerator
Faz seu agente acelerar a movimentação de grandes volumes de dados. Ele encontra gargalos e garante que os dados sejam transferidos de forma rápida e correta.
affaan-m/ECC
inventory-demand-planning
Ajuda seu agente a prever a demanda de produtos em lojas. Ele otimiza o estoque e planeja quando fazer promoções para vender mais.
affaan-m/ECC
market-research
Ajuda seu agente a realizar pesquisas de mercado e análises competitivas. Fornece resumos com atribuição de fontes.
affaan-m/ECC