Skip to main content

piblin

A Framework for Measurement Data Science

PyPI Downloads Python 3.10 | 3.11 | 3.12 | 3.13 Tests: pytest License: MIT

Overview

The piblin package is based on a number of abstractions related to the collection and analysis of scientific data. Its fundamental concept is the Dataset, a mapping between independent and dependent variables as typically obtained as the result of applying a scientific measurement technique to a physical sample. The dimensionality of these datasets provides a simple approach to classifying them.

Beyond differences in dimensionality, specific types of dataset are defined which allow for customization of the behaviour of piblin for data collected by specific techniques. For example, the Spectrum and its many subtypes allow appropriate visualization of datasets specific to given spectroscopic techniques.

Building on the dataset concept, scientific measurements are often discussed in terms of a hierarchy of measurements, experiments and projects, and this provides a natural language for collecting, editing and analyzing scientific data. The piblin package organizes datasets via the concept of a Measurement, which joins a set of conditions and details with corresponding datasets. Sets of measurements can be organized into Experiment objects, which collect multiple measurements with the same conditions into sets of repetitions, allowing for statistical analysis of variation among them. All of this organization is automatic, and can be controlled by direct and simple editing of the metadata of measurements. Hierarchically organized data can also be flattened for use in machine-learning applications, and flat data can be converted into hierarchical data in turn.

The final fundamental concept for performing data analytics on experimental datasets is the Transform. This is a procedure which takes data as input and produces altered data as output. For example a spectroscopic dataset may be integrated over a region to yield the area under a peak, a transformation from a 1D dataset to a scalar value. The set of transforms is infinite and piblin provides some general and some specific classes that provide typical functionality. As for file reading, the package makes it as easy as possible to add a new transform, and a tutorial is included.

Datasets

Organizing independent and dependent data.

A dataset collects points: pairs of dependent and independent variable values,

$$y = f(\mathbf{x}).$$

The set of points for a dataset of dimensionality $n$ can be given a more detailed definition,

$$\mathcal{P} = {,(\mathbf{x}, y) \in {(x_0, x_1, \ldots, x_n) \in \mathbb{R}^n} \times {y \in \mathbb{R}},},$$

where the dimensionality $n$ is the number of independent variables for each point. Datasets are essentially context-free objects: they carry the numerical relationship $y = f(\mathbf{x})$ without any assumption about the physical technique that produced them. Context — sample identity, instrument conditions, processing history — is attached at the Measurement level, one layer up.

Metadata

Release files for piblin 0.0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for piblin 0.0.2
File Size Uploaded
piblin-0.0.2.tar.gz 143.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for piblin 0.0.2
File Interpreter ABI Platform
piblin-0.0.2-py3-none-any.whl Python 3 none any Details

Total release size: 322.1 kB

Release files / piblin-0.0.2.tar.gz

Download URL piblin-0.0.2.tar.gz
Size 143.5 kB
Tags Source
SHA-256 checksum
How to use checksums
075a1284a7fcb505245d1bec418930f711dc04e9de5808c68912d6dd9f8ddfc3
BLAKE2b-256 checksum
How to use checksums
9d578fa0c671058482cd1d70e91a35ef8e20dc7c47332a9304e3f9699af8a08b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.17

Release files / piblin-0.0.2-py3-none-any.whl

Download URL piblin-0.0.2-py3-none-any.whl
Size 178.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a9da93f48c2aad88f7a2bfb95a3bb5fd6daf0bbdbbe353a3f6f6573b18276c97
BLAKE2b-256 checksum
How to use checksums
4d74e0a956e06db3b347f3384ad3d06ea51d4204e2d9090dad17dc8ad6441f8f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.11.17

Release history Release notifications | RSS feed

0.0.3

2 release files

This release

0.0.2 This release

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page