scverse / Muon.jl

Muon for Julia

Home Page:https://scverse.github.io/Muon.jl/dev

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Muon.jl

Muon for Julia

Muon is originally a Python library to work with multimodal data. Muon.jl brings the ability to work with the same data structures to Julia.

Muon.jl implements I/O for .h5mu and .h5ad files as well as basic operations on the multimodal objects.

Introduction

Datasets can usually be represented as matrices with values for the variables measured in different samples, or observations. Variables and observations tend to have annotations attached to them, a typical example would be metadata annotating samples. Such a dataset with the matrix in its centre and different kinds of annotations associated with it can be stored conveniently in an annotated data object, AnnData for short.

Multimodal datasets are characterised by the variables coming from different generative processes. Each of these modalities is an annotated dataset by itself, but they can be managed and analyzed together within a MuData object.

Examples

MuData objects can be created from .h5mu files:

using Muon

mdata = readh5mu("pbmc10k.h5mu");

Individual modalities can be accessed directly by their name:

mdata["rna"]
# => AnnData object 10110 ✕ 101001

Low-dimensional representations of the data can be plotted with the plotting library of choice:

using DataFrames
using GLMakie
using AlgebraOfGraphics

df = DataFrame(LF1 = mdata.obsm["X_umap"][1,:],
               LF2 = mdata.obsm["X_umap"][2,:]);

data(df) * mapping(:LF1, :LF2) * visual(Scatter) |> draw

About

Muon for Julia

https://scverse.github.io/Muon.jl/dev

License:BSD 3-Clause "New" or "Revised" License


Languages

Language:Julia 100.0%