Registry / data / scipp
library26.3.1pypypi✓ verified 85d ago

Scipp is a Python library for multi-dimensional data arrays with labeled dimensions, designed for scientific data analysis, especially in neutron and muon scattering. It provides unit-aware data structures and operations, enabling robust handling of physical quantities. The current version is 26.3.1, and it maintains a rapid release cadence with monthly major updates.

pip install scipp
INSTALL
IMPORT
SIG · SCIPP
S
scipp
datapythonv26.3.1
Install
5.1s avg
Import
442ms
Disk
160MB
Pass rate
5/ 10
Env Coverage5 / 10
glibc
3.93.13
musl
3.93.13
Install & Compatibility
Where this runs
tested against v25.5.1 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
py 3.103.910 runs
build_error
glibc
py 3.103.910 runs
installs and imports cleanly · install 5.1s · import 0.442s · 115MB
160MB installed
● package 160MB
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

scipp
import scipp as sc
Variable
from scipp import Variable
DataArray
from scipp import DataArray
Dataset
from scipp import Dataset

This quickstart demonstrates how to create a unit-aware `Variable` and then encapsulate it within a `DataArray` along with its coordinates. It then performs a basic operation (sum) that respects Scipp's unit-aware nature.

import scipp as sc import numpy as np # Create a variable with units x = sc.linspace(dim='x', start=0.1, stop=0.9, num=10, unit='m') y = sc.sin(x) # Create a DataArray, including coordinates and data data_array = sc.DataArray(data=y, coords={'x': x}) print("Original DataArray:\n", data_array) # Perform a unit-aware operation (e.g., sum over 'x' dimension) sum_result = data_array.sum('x') print("\nSum along 'x' dimension:\n", sum_result)
Debug
Known issues
breakingScipp dropped support for Python 3.10. Users must upgrade to Python 3.11 or newer.
fix
Upgrade your Python environment to 3.11 or a later version.
affects: >=25.08.0
breakingThe custom HTML representation for Scipp objects in Jupyter notebooks (`sc` notebook HTML repr) was removed. Objects now rely on their standard `__repr__` method.
fix
No direct fix; observe the new default text-based representation. If custom visualization is needed, consider external plotting libraries or manual rendering.
affects: >=26.3.0
gotchaScipp is strictly unit-aware. Operations on `Variable` or `DataArray` objects with incompatible units will raise a `UnitError`.
fix
Ensure units are compatible for operations, convert units using `.to()` method, or explicitly strip units with `var.without_units()` if desired.
affects: All versions
gotchaAccessing the underlying NumPy array data requires using the `.values` attribute. Directly indexing a `Variable` object will result in a `TypeError`.
fix
To get the NumPy array from a `Variable` or `DataArray`'s data, use `my_var.values` or `my_data_array.values`.
affects: All versions
Errors
Common errors & fixes
ModuleNotFoundError: No module named 'scipp'
The scipp package is not installed in the current Python environment.
fix
Run `pip install scipp` to install the library.
scipp.core.UnitError: Units do not match
Attempting an operation (e.g., addition, subtraction) on Scipp variables or data arrays that have incompatible physical units.
fix
Ensure all operands have compatible units. Use `my_var.to(target_unit)` to convert units or `my_var.without_units()` to remove units before the operation.
TypeError: 'Variable' object is not subscriptable
Trying to access elements of a `scipp.Variable` object using array indexing (e.g., `my_variable[0]`) instead of its underlying NumPy array.
fix
Access the underlying NumPy array first using `.values` attribute: `my_variable.values[0]`.
scipp.core.DimensionError: Cannot perform operation ... dimensions ... do not align
Operations between data arrays with non-matching dimensions, dimension labels, or dimension order without explicit alignment.
fix
Ensure dimensions align or explicitly broadcast/reorder them. For element-wise operations, dimensions and their order must match. Use `my_da.transpose()` or ensure common dimensions are present.
Upgrade
Version history
26.3.1latest on PyPI · released Mar 16, 2026
Audit
Dependencies
numpyrequiredCore array manipulation backend.
h5pyoptionalHDF5 file format support.
Agent activity
13 hits · last 30 days
node
12
OpenAI (training)
1
Resources
scipp — pip install scipp · libregistry