ncBuilder
Project description
ncBuilder
netCDF4 tool to help creating new files from scratch, and loading variables from existing ones.
example
from ncBuilder import (
ncBuilder,
ncHelper,
)
import datetime as dt
import numpy as np
import pandas as pd
dtNow = dt.datetime.now()
times = pd.date_range('2021-01-01', periods=10).to_pydatetime()
lat = np.arange(-30., 10. + 0.05, 0.05)
lon = np.arange(-60., -30 + 0.05, 0.05)
temp = np.random.rand(times.size, lat.size, lon.size)
nc_file = ncBuilder.initialize_nc(dtNow, '/path/to/file', '_suffix.nc')
# or
nc_file = nc.Dataset('your_nc_file.nc', 'w')
# nc_file = ncBuilder.initialize_nc('file_name_here', '/path/to/file', '_suffix.nc')
# creating dimensions
ncBuilder.create_nc(nc_file,
lat,
lon,
time=times)
# or create variables while creating dimensions
ncBuilder.create_nc(nc_file,
lat,
lon,
time=times,
vars={'temp': {'dims': ('time', 'latitude', 'longitude'),
'units': 'ºC',
'standard_name': 'temperature in ºC',
},
})
# creating a single variable
ncBuilder.create_nc_variable(nc_file,
'temp',
comp_lvl=6,
dims=('time',
'latitude',
'longitude'),
dtype=np.float64,
units='°C',
standard_name='temperature in °C')
# updating a variable
ncBuilder.update_nc(nc_file, 'temp', temp)
# updating partially a variable
ncBuilder.update_nc(nc_file, 'temp', temp[:, 5:, :-5], dims=(slice(None),
slice(5, None),
slice(None, -5)))
# loading time
times = ncHelper.load_time(nc_file.variables['time'])
# getting lats and lons
lats, lons = ncHelper.get_lats_lons(nc_file)
# getting nearest point
idx, jdx = ncHelper.get_idx_pos(lat0, lon0, lats, lons)
# closing the nc_file
nc_file.close()
version 0.0.7a
- Packages are now installed with the lib, they were not configured properly.
version 0.0.7
- Added create_nc_dimension, so new custom dimensions can be easily added.
- Minor modifications to the inner creation of dimensions to accomodate the new function.
version 0.0.6
- Added zlib, fill_value and variable_kw when creating a new variable, so it's more customizable
- Changed the way dimension variables are created for more consistency of the process
version 0.0.5
- Added ncHelper, which contains load_time, get_lats_lons and get_idx_pos
version 0.0.3
- Modified function names to use snake_style pattern
- Comments added to the main functions
- Example updated to follow the new patterns
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
ncBuilder-0.1.0.tar.gz
(8.8 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ncBuilder-0.1.0.tar.gz.
File metadata
- Download URL: ncBuilder-0.1.0.tar.gz
- Upload date:
- Size: 8.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.25.1 requests-toolbelt/0.9.1 urllib3/1.26.6 tqdm/4.61.2 importlib-metadata/4.10.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e11628b4e74a7b1ef7928263fc4e16c278143cd410f83983f0a77b06c300370c
|
|
| MD5 |
f03bc0e24a7db9953aaee4e9d028b19e
|
|
| BLAKE2b-256 |
e7bdf501cdf1ec403c31fa9305b7fa6b0b6c44c3ef11f53b588df1a2f33446f1
|
File details
Details for the file ncBuilder-0.1.0-py3-none-any.whl.
File metadata
- Download URL: ncBuilder-0.1.0-py3-none-any.whl
- Upload date:
- Size: 8.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.25.1 requests-toolbelt/0.9.1 urllib3/1.26.6 tqdm/4.61.2 importlib-metadata/4.10.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0115fc314aeface3b680cf25b8d33f717d2bb0eea68fa70ab1c1ed126ad794e9
|
|
| MD5 |
aa8ad094840dbc0248fcfb4af47d588c
|
|
| BLAKE2b-256 |
4049cce310f045e03e3430e56d4d8b703dd8a6db08cd3c8c26c42cc53f606f56
|