I have a nc file retrieved from the following link https://www.globsnow.info/swe/nrt/2020/data/GlobSnow_SWE_L3A_20200110_v.1.0.nc.gz. I am trying to convert this file to geotiff in wgs 1984 coordinate reference system using python. following is the code i have tried:
import rasterio
import matplotlib.pyplot as plt
from netCDF4 import Dataset
import numpy as np
nc_file = Dataset('path/to/your/nc/file.nc', 'r')
snow_depth = nc_file.variables['snow_depth'][:]
lat = nc_file.variables['latitude'][:]
lon = nc_file.variables['longitude'][:]
lat_attrs = nc_file.variables['latitude'].ncattrs()
lon_attrs = nc_file.variables['longitude'].ncattrs()
transform = rasterio.transform.from_origin(lon[0], lat[0], lon[1]-lon[0], lat[1]-lat[0])
width = int(round((lon[-1] - lon[0]) / transform[0]))
height = int(round((lat[-1] - lat[0]) / transform[4]))
meta = {
'count': 1,
'crs': 'EPSG:4326',
'transform': transform,
'width': width,
'height': height,
'driver': 'GTiff',
'dtype': rasterio.float32,
'nodata': -9999
}
with rasterio.open('path/to/your/output/geotiff/file.tif', 'w', **meta) as dst:
dst.write(snow_depth, 1)
However, I am getting the error that is: "MaskedArray doesn't define round method".
I am looking to convert this file to geotiff, then reproject it to wgs1984.
max
and/or amin