Print it off | Put it on your desk
Preview not showing? Open the PDF directly instead — some mobile browsers don't render embedded PDFs.
Common tasks, one line of code each. Every example assumes import nctoolkit as nc and a dataset ds opened with nc.open_data(). The tag on each card links to the method's full entry in the API reference.
ds = nc.open_data("foo.nc")
ds = nc.open_data(["foo1.nc", "foo2.nc"])
ds = nc.open_data("data/*.nc")
ds = nc.open_thredds("https://foo.nc")
ds = nc.open_url("https://foo.nc")
ds = nc.from_xarray(xr_ds)ds2 = ds.copy()ds = nc.open_geotiff("foo.tif")
files = nc.glob("data/foo")
ds.variables
ds.contents
# a table with one row per variable and columns:
# variable, ntimes, npoints, nlevels,
# long_name, unit, data_type, fill_valueds.contents.long_name
ds.contents.unit
ds.contents[["variable", "long_name"]]
ds.contents.data_type
ds.contents.ntimes
ds.contents.npoints
ds.contents.nlevels
ds.contents.fill_value
ds.years
ds.times
ds.levels
ds.current
ds.history
ds.size
ds.subset(month=6)
ds.subset(years=range(1980, 1990))
ds.subset(season="DJF")
ds.subset(time=0)
ds.subset(variables=["var1", "var2"])
ds.drop(variables="var1")
ds.subset(lon=[-10, 10], lat=[45, 60])
ds.mask_box(lon=[-10, 10], lat=[45, 60])
ds.tmean()ds.tmean("year")
ds.tmean("month")
ds.tmean(["year", "month"])
ds.tmax()ds.trange()ds.tpercentile(90)
ds.tstdev()ds.tcumsum()ds.rolling_mean(10)
ds.annual_anomaly(baseline=[1970, 1979])
ds.monthly_anomaly(baseline=[1970, 1979])
ds.shift(hours=-1)
ds.tmin()ds.rolling_max(10)
ds.cor_time(var1="var1", var2="var2")
nc.cor_time(x=ds1, y=ds2)ds.spatial_mean()ds.spatial_sum(by_area=True)
ds.spatial_max()ds.zonal_mean()ds.meridonial_mean()ds.box_mean(x=2, y=2)
ds.cell_area()ds.spatial_min()ds.zonal_max()ds.meridonial_max()ds.box_max(x=2, y=2)
ds.cor_space(var1="var1", var2="var2")
nc.cor_space(x=ds1, y=ds2)ds.top()ds.bottom()ds.vertical_mean(fixed=True)
ds.vertical_range()ds.vertical_interp(levels=[10, 50, 100], fixed=True)
ds.vertical_cumsum()ds.vertical_sum()ds.vertical_integration(fixed=True)
ds.invert_levels()ds.bottom_mask()ds.regrid(ds2)ds.regrid(ds2, method="nn")
ds.to_latlon(lon=[-180, 180], lat=[-90, 90], res=2)
ds.regrid(lon=-4.1, lat=50.3)
ds.regrid(lon=[-4.1, -5.5], lat=[50.3, 50.0])
ds.to_transect(start=[-30, 0], end=[-30, 60], nsteps=61)
ds.resample_grid(2)
ds.fill_na()ds.time_interp(start="1990/01/01", end="1990/12/31", resolution="daily")
ds.timestep_interp(steps=6)
ds.assign(sst_k=lambda x: x.sst + 273.15)
ds.assign(sst_k=lambda x: x.sst + 273.15, drop=True)
ds + 273.15 ds.add(273.15)
ds * 100 ds.multiply(100)
ds - ds2
ds.subtract(ds2)ds / ds2
ds.divide(ds2)ds.abs()ds > 20 ds.compare(">20")
ds.exp()ds.sqrt()ds.square()ds.power(2)
ds.rename({"old": "new"})
ds.set_units({"sst": "degC"})
ds.set_longnames({"sst": "Sea surface temperature"})
ds.as_missing([-5, 0])
ds.missing_as(0)
ds.set_fill(-999)
ds.strip_variables(vars="sst2")
ds.sum_all()ds.set_gridtype("lonlat")
ds.set_precision("F64")
ds.ensemble_mean()ds.ensemble_mean(ignore_time=True)
ds.ensemble_range()ds.merge("time")
ds3 = nc.merge(ds1, ds2)ds.split("year")
ds.append("foo.nc")
ds.remove("foo.nc")
ds.collect()ds.distribute(m=2, n=2)
ds.plot()ds.pub_plot()ds.pub_plot(out="map.png", dpi=300)
nc.panel_plot({"a": ds1, "b": ds2})
ds.to_nc("out.nc")
ds.to_xarray()ds.to_dataframe()ds.zip()ds.format("nc4")
ds.check()ds.is_corrupt()ds.na_count()ds.na_frac()ds.no_leaps()ds.run()nc.options(lazy=False)
nc.options(cores=6)
nc.deep_clean()