NetCDFFileProperties
Summary
The NetCDFFileProperties object accesses properties from a network Common Data Form (netCDF). netCDF is a binary, self-describing, machine-independent file format for storing scientific data.
Syntax
NetCDFFileProperties(netcdffile)
| Name | Explanation | Data type |
|---|---|---|
|
netcdffile |
The input netCDF file. |
String |
Methods
getAttributeNames({variable_name[variable_name,...]})
Returns the attribute names of a variable in a netCDF file.
| Name | Explanation | Data type |
|---|---|---|
|
variable_name[variable_name,...] (Optional) |
A variable name of the netCDF file. |
String |
Return value
| Data type | Explanation |
|---|---|
|
String |
The attribute names of the variable. |
getAttributeValue(variable_name, attribute_name)
Returns the value of an attribute.
| Name | Explanation | Data type |
|---|---|---|
|
variable_name |
A variable name of the netCDF file. |
String |
|
attribute_name |
An attribute name of the netCDF file. |
String |
Return value
| Data type | Explanation |
|---|---|
|
Object |
The value of the attribute. The type of returned value depends on the dimension type. |
getDimensionIndex(dimension_name, value)
Returns the dimension index.
| Name | Explanation | Data type |
|---|---|---|
|
dimension_name |
A dimension name of the netCDF file. |
String |
|
value |
The dimension value. |
Integer |
Return value
| Data type | Explanation |
|---|---|
|
Integer |
The dimension index. |
getDimensionSize(dimension_name)
Returns the dimension size.
| Name | Explanation | Data type |
|---|---|---|
|
dimension_name |
A dimension name of the netCDF file. |
String |
Return value
| Data type | Explanation |
|---|---|
|
Integer |
The dimension size. |
getDimensionValue(dimension_name, index)
Returns the dimension value.
| Name | Explanation | Data type |
|---|---|---|
|
dimension_name |
A dimension name of the netCDF file. |
String |
|
index |
The index position. |
Integer |
Return value
| Data type | Explanation |
|---|---|
|
Object |
The dimension value. The type of returned value depends on the dimension type. |
getDimensions()
Returns the dimensions.
Return value
| Data type | Explanation |
|---|---|
|
String |
A list of dimensions. |
getDimensionsByVariable(variable_name)
Returns the dimensions by variable.
| Name | Explanation | Data type |
|---|---|---|
|
variable_name |
A variable name of the netCDF file. |
String |
Return value
| Data type | Explanation |
|---|---|
|
String |
The dimensions by variable. |
getFieldType(name)
Returns the field type of a variable or dimension.
| Name | Explanation | Data type |
|---|---|---|
|
name |
A variable or dimension name of the netCDF file. |
String |
Return value
| Data type | Explanation |
|---|---|
|
String |
The field type. |
getSpatialReference(variable_name, x_dimension, y_dimension)
Returns the spatial reference of a variable.
| Name | Explanation | Data type |
|---|---|---|
|
variable_name |
A variable name of the netCDF file. |
String |
|
x_dimension |
The x-dimension. |
Integer |
|
y_dimension |
The y-dimension. |
Integer |
Return value
| Data type | Explanation |
|---|---|
|
SpatialReference |
The spatial reference of a variable. |
getVariables()
Returns the variables.
Return value
| Data type | Explanation |
|---|---|
|
String |
A list of variables. |
getVariablesByDimension(dimension_name)
Returns the variables by dimension.
| Name | Explanation | Data type |
|---|---|---|
|
dimension_name |
A variable name of the netCDF file. |
String |
Return value
| Data type | Explanation |
|---|---|
|
String |
The list of variables by dimension. |
Code sample
Display properties of a netCDF file.
import arcpy
in_netcdf = "c:/netCDF/crwr.nc"
nc_fp = arcpy.NetCDFFileProperties(in_netcdf)
# Get Variables
for nc_var in nc_fp.getVariables():
print("Variable: {}".format(nc_var))
print("\tVariable type: {}".format(nc_fp.getFieldType(nc_var)))
# Get dimensions by variable
for nc_dim_by_var in nc_fp.getDimensionsByVariable(nc_var):
print("Dimension: {}".format(nc_dim_by_var))
print(nc_fp.getAttributeValue(nc_var, "units"))
# Get Variable Attributes
for nc_va_name in nc_fp.getAttributeNames(nc_var):
print("Attribute Name: {}".format(nc_va_name))
# Get Dimensions
for nc_dim in nc_fp.getDimensions():
print("Dimension: {}".format(nc_dim))
print("\tDimension size: {}".format(nc_fp.getDimensionSize(nc_dim)))
print("\tDimension type: {}".format(nc_fp.getFieldType(nc_dim)))
for i in range(0, nc_fp.getDimensionSize(nc_dim)):
nc_dim_value = nc_fp.getDimensionValue(nc_dim, i)
print("\tDimension value: {}".format(nc_dim_value))
print("\tDimension index: {}".format(
nc_fp.getDimensionIndex(nc_dim, nc_dim_value)))
# Get Variable by dimension
for nc_vars_by_dim in nc_fp.getVariablesByDimension(nc_dim):
print("\tVariable by dimension: {}".format(nc_vars_by_dim))
# Get Global Attributes
for nc_att_name in nc_fp.getAttributeNames(""):
print("Attribute Name: {}".format(nc_att_name))
print(nc_fp.getAttributeValue("", nc_att_name))