Skip to main content

A collection of cheminformatics utility functions for use with marimo notebooks.

Project description

marimo-chem-utils

A collection of cheminformatics utility functions for use with marimo, an open-source reactive notebook for Python.

Installation

You can install marimo-chem-utils using pip:

pip install marimo-chem-utils

Usage

Here is an example of how to use some of the functions in this library.

import pandas as pd
import marimo as mo
from marimo_chem_utils import (
    add_fingerprint_column,
    add_image_column,
    add_inchi_key_column,
    add_tsne_columns,
    interactive_chart
)

# Load some data
df = pd.read_csv("https://raw.githubusercontent.com/PatWalters/datafiles/refs/heads/main/carbonic.csv")

# Add fingerprints, images, and InChI keys
df = add_fingerprint_column(df, fp_type="counts_fp")
df = add_image_column(df, smiles_column="SMILES")
df = add_inchi_key_column(df, smiles_column="SMILES")

# Generate t-SNE coordinates
df = add_tsne_columns(df)

# Create an interactive plot
chart = interactive_chart(df, x_col="TSNE_x", y_col="TSNE_y", color_col="PIC50", image_col="image")

# In a marimo cell, you would display the chart like this:
# mo.ui.altair_chart(chart)

This will create a pandas.DataFrame with additional columns for fingerprints, images, and InChI keys, and then generate an interactive t-SNE plot that you can explore in your marimo notebook. The plot will display molecule images in the tooltips.

Examples

The examples directory contains marimo notebooks that demonstrate how to use marimo-chem-utils. You can run them from the command line.

  • scatterplot.py: An interactive scatterplot that shows chemical structures as tooltips. Selections on the plot are used to display a grid of molecules.
marimo edit examples/scatterplot.py
  • clustering.py: An example of clustering molecules and viewing the cluster members.
marimo edit examples/clustering.py

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

marimo_chem_utils-0.2.4.tar.gz (5.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

marimo_chem_utils-0.2.4-py3-none-any.whl (6.2 kB view details)

Uploaded Python 3

File details

Details for the file marimo_chem_utils-0.2.4.tar.gz.

File metadata

  • Download URL: marimo_chem_utils-0.2.4.tar.gz
  • Upload date:
  • Size: 5.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.17 {"installer":{"name":"uv","version":"0.9.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for marimo_chem_utils-0.2.4.tar.gz
Algorithm Hash digest
SHA256 a6b74d070403d277e204db8fd352305fe19b4675db6cd0b2b7c9dba828e2090b
MD5 b461eb36b220fb1f2cc7ad806a9907e3
BLAKE2b-256 116e4f28b9b0b8ffbf9bc91e445b410a2b71f876e66775061a32ffb7e274fadc

See more details on using hashes here.

File details

Details for the file marimo_chem_utils-0.2.4-py3-none-any.whl.

File metadata

  • Download URL: marimo_chem_utils-0.2.4-py3-none-any.whl
  • Upload date:
  • Size: 6.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.17 {"installer":{"name":"uv","version":"0.9.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for marimo_chem_utils-0.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 6bbe9259f019bf8693e3611de0b3fa91758e39d34e20028e732298f7a854262c
MD5 a94c1d672ec447e9bc0a76d24225033f
BLAKE2b-256 91a3c146035b43067b817a0dd3e6329712170b76eda5d96275fb5120db889a02

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page