Registry / data / pdbufr

pdbufr

JSON →
library0.14.2pypypi✓ verified 84d ago

pdbufr is a Python library for reading BUFR (Binary Universal Form for the Representation of meteorological data) files into pandas DataFrames. Built on ecCodes, it simplifies decoding of complex BUFR messages. Current version: 0.14.2, with monthly/quarterly releases.

pip install pdbufr
INSTALL
IMPORT
SIG · PDBUFR
P
pdbufr
datapythonv0.14.2
Install
10.0s avg
Import
1318ms
Disk
228MB
Pass rate
10/ 10
Env Coverage10 / 10
glibc
3.93.13
musl
3.93.13
Install & Compatibility
Where this runs
tested against v0.14.2 · 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.95 runs
installs and imports cleanly · install 0.0s · import 0.000s · 170.9MB
glibc
py 3.103.95 runs
installs and imports cleanly · install 10.0s · import 1.318s · 236MB
228MB installed
● package 228MB
Code
Verified usage

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

read_bufr
from pdbufr import read_bufr
Correct import for reading BUFR files.

Reads selected columns from a BUFR file into a pandas DataFrame.

from pdbufr import read_bufr df = read_bufr('path/to/file.bufr', columns=['latitude', 'longitude', 'airTemperature']) print(df.head())
Debug
Known issues
deprecatedThe pdbufr.from_source function is deprecated since v0.14.0; use read_bufr directly.
fix
Replace pdbufr.from_source(...) with pdbufr.read_bufr(...).
affects: >=0.14.0
breakingECCODES_PATH environment variable is no longer supported. ecCodes must be in PATH or standard install location.
fix
Install eccodes via system package manager or conda, or set LD_LIBRARY_PATH.
affects: >=0.13.0
gotchaColumn names must match BUFR parameter names exactly; case-sensitive. Use `columns` parameter to avoid reading all columns.
fix
Check BUFR parameter names via `read_bufr(file, flatten=False).columns`.
affects: all
deprecatedThe `flatten` parameter default changed to True in v0.13.0; setting to False returns nested dicts.
fix
Specify flatten=False explicitly if you need nested structure.
affects: >=0.13.0
Errors
Common errors & fixes
ModuleNotFoundError: No module named 'eccodes'
ecCodes C library not installed or not found.
fix
Install eccodes via conda ('conda install -c conda-forge eccodes') or system package manager (apt-get install libeccodes-dev).
KeyError: 'latitude'
BUFR file does not contain the requested column name.
fix
Use `read_bufr(file, flatten=False)` to see all available parameter names.
pdbufr.errors.EcCodesError: Error while loading BUFR file
File is corrupt or not a valid BUFR format.
fix
Verify file integrity and ensure it is a BUFR file (not GRIB or other).
Upgrade
Version history
0.14.2latest on PyPI · released Feb 26, 2026
Audit
Dependencies
eccodesrequiredRequired runtime dependency for BUFR encoding/decoding.
numpyrequiredRequired for array operations.
pandasrequiredOutput data structures are pandas DataFrames.
pdbufr[full]optionalInstalls extra dependencies for full functionality (e.g., cfgrib).
Agent activity
2 hits · last 30 days
node
2
Resources
pdbufr — pip install pdbufr · libregistry