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.0.8.tar.gz
(8.5 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.0.8.tar.gz.
File metadata
- Download URL: ncBuilder-0.0.8.tar.gz
- Upload date:
- Size: 8.5 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 |
6b507c50a1c8f4ebf81c0b79390f339a1afab9fe07775e9a4122777df815cd47
|
|
| MD5 |
db1490ae8f87cdef4e2f0dba0782b12a
|
|
| BLAKE2b-256 |
1e31c87756f0d9d8411a01babc2aab705c7d0a8e97b8f133d2ab1989801ed1d3
|
File details
Details for the file ncBuilder-0.0.8-py3-none-any.whl.
File metadata
- Download URL: ncBuilder-0.0.8-py3-none-any.whl
- Upload date:
- Size: 8.1 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 |
3d3c048201bd28be9ba35b7443ab76969f0e587b4f2eadc08fe05ff1194dd787
|
|
| MD5 |
7413c8458826ece8cc1eafd4e55a24a6
|
|
| BLAKE2b-256 |
61cd1aa3dd3a4bb234d96f000cf31eb1fd4896a97ba101e6d137b44a8623f730
|