Questão:
Convert R RNA-seq data object to a Python object
Peter
2018-03-21 21:27:53 UTC
view on stackexchange narkive permalink

Fiz alguns trabalhos em R e gostaria de experimentar uma ferramenta Python.

Qual é uma boa maneira de importar os dados (e suas anotações, etc.) como um objeto Python?

Estou particularmente interessado em converter um objeto Seurat em um objeto AnnData. (Tanto diretamente quanto como um objeto Python que pode ser convertido em um AnnData .)

Trzy respostas:
Peter
2018-03-21 22:45:50 UTC
view on stackexchange narkive permalink

Uma solução simples para converter objetos Seurat em AnnData, conforme descrito nesta vinheta:

  library (reticulate) seuratobject_ad <- Convert (from = seuratobject, to = "anndata", filename = "seuratobject.h5ad")  

Alternativamente, pode-se usar Loom, "um formato de arquivo projetado para armazenar e trabalhar com dados RNA-seq de célula única ".

No R, instale o LoomR:

  devtools :: install_github (repo = "mojaveazure / loomR")  

Converter de objeto Seurat em tear:

  pfile <- Convert (from = pbmc_small, to = " loom ", filename =" pbmc_small.loom ") pfile $ close () # feche objetos loom quando terminar de usá-los.  

Em seguida, importe o objeto loom em Python usando loompy, ou diretamente como AnnData:

scanpy.api.read_loom


Como alternativa, consulte feather .


Ou exporte como algum formato de texto (csv, json) e importe para Python.

Eu recomendaria seguir a regra do KISS. Se você pode exportar os dados em .csv ou json melhor, mas isso depende de qual é o formato de dados original
Dr_Hope
2019-11-06 04:32:41 UTC
view on stackexchange narkive permalink

As respostas estão desatualizadas. Convert () funciona apenas para objetos Seurat2. Para objetos Seurat3 você só pode convertê-los em tear para que o Scanpy importe. E você pode usar o Scanpy para gravar seu objeto anndata em um arquivo h5ad.

Dr_Hope
2020-09-04 16:17:25 UTC
view on stackexchange narkive permalink

O Convert () de Seurat pode não funcionar com certas versões do Scanpy. Sempre que não funcionar, você pode salvar os dados em arquivos do matrixmarket e importá-los para o python.

Alternativamente, você pode tentar o sceasy

de Sanger


Estas perguntas e respostas foram traduzidas automaticamente do idioma inglês.O conteúdo original está disponível em stackexchange, que agradecemos pela licença cc by-sa 3.0 sob a qual é distribuído.
Loading...