Skip to main content

lite weight data frame class that supports nestes structures.

Project description

Project generated with PyScaffold

BiocFrame

This package implements a lite weight data frame like class (comparable to Pandas DataFrame) but supports more flexible column types, e.g: nested columns.

Install

Package is published to PyPI

pip install biocframe

Usage

Lets create a BiocFrame from a dictionary

from biocframe import BiocFrame

bframe = BiocFrame(
    data = {
        "seqnames": [
            "chr1",
            "chr2",
            "chr2",
            "chr2",
            "chr1",
            "chr1",
            "chr3",
            "chr3",
            "chr3",
            "chr3",
        ]
        * 20,
        "starts": range(100, 300),
        "ends": range(110, 310),
        "strand": ["-", "+", "+", "*", "*", "+", "+", "+", "-", "-"] * 20,
        "score": range(0, 200),
        "GC": [random() for _ in range(10)] * 20,
    }
)

Access Properties

Accessor methods/properties are available to access column names, row names and dims.

# find the dimensions
print(bframe.dims)

# get the column names
print(bframe.columnNames)

Setters

Using the Pythonic way to set properties

# set new column names
bframe.columnNames = [... new colnames ...]
print(bframe.columnNames)

# add or reassign columns

bframe["score"] = range(200, 400)

Slice the BiocFrame

Currently slicing is only supported by indices or names (column names or row names). A future version may implement pandas query-like operations.

sliced_bframe = bframe[3:7, 2:5]

For more use cases including subset, checkout the documentation

Note

This project has been set up using PyScaffold 4.3. For details and usage information on PyScaffold see https://pyscaffold.org/.

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

BiocFrame-0.2.13.tar.gz (26.9 kB view details)

Uploaded Source

Built Distribution

BiocFrame-0.2.13-py3-none-any.whl (11.2 kB view details)

Uploaded Python 3

File details

Details for the file BiocFrame-0.2.13.tar.gz.

File metadata

  • Download URL: BiocFrame-0.2.13.tar.gz
  • Upload date:
  • Size: 26.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.17

File hashes

Hashes for BiocFrame-0.2.13.tar.gz
Algorithm Hash digest
SHA256 aa8903a2a02dc4b2745725e3ff090e16a779b6d0917f94aa4d8c8ee48a98f2f8
MD5 9c1b3b312c423380f44626205676e526
BLAKE2b-256 4423b381b2cae478c546adf40b0b65ea1e06b924e88cace5d01a46fe17bae856

See more details on using hashes here.

File details

Details for the file BiocFrame-0.2.13-py3-none-any.whl.

File metadata

  • Download URL: BiocFrame-0.2.13-py3-none-any.whl
  • Upload date:
  • Size: 11.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.17

File hashes

Hashes for BiocFrame-0.2.13-py3-none-any.whl
Algorithm Hash digest
SHA256 f5456623138d40acc1a3027159f2189afb3ff6d6ddefdec84548565eb4e658bc
MD5 256eb8ccbdd155931349777cc44e1bf8
BLAKE2b-256 812e74c97def818862ff0624e51ac0ba3d53755223af8c919d07029009a05f1b

See more details on using hashes here.

Supported by

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