Skip To Content

NetCDFFileProperties

Summary

The Network Common Data Form (netCDF) is a binary, self-describing, machine-independent file format for storing scientific data.

Learn more about netCDF

Syntax

 NetCDFFileProperties  (netcdffile)
ParameterExplanationData Type
netcdffile

The input netCDF file.

String

Method Overview

MethodExplanation
getAttributeNames ({variable_name})

Gets the attribute names of a variable in a NetCDF file.

getAttributeValue (variable_name, attribute_name)

Get the value of an attribute.

getDimensionIndex (dimension_name, value)

Gets the dimension index.

getDimensionSize (dimension_name)

Gets the dimension size.

getDimensionValue (dimension_name, index)

Gets the dimension value.

getDimensions ()

Gets the dimensions.

getDimensionsByVariable (variable_name)

Gets the dimensions by variable.

getFieldType (name)

Gets the field type of a variable or dimension.

getSpatialReference (variable_name, x_dimension, y_dimension)

Gets the spatial reference of a variable.

getVariables ()

Gets the variables.

getVariablesByDimension (dimension_name)

Get the variables by dimension.

Methods

getAttributeNames ({variable_name})
ParameterExplanationData Type
variable_name
[variable_name,...]

Variable name of the NetCDF file.

String
Return Value
Data TypeExplanation
String

The attribute names of the variable.

getAttributeValue (variable_name, attribute_name)
ParameterExplanationData Type
variable_name

Variable name of the netCDF file.

String
attribute_name

Attribute name of the netCDF file.

String
Return Value
Data TypeExplanation
Object

The value of the attribute. The type of returned value depends on the dimension type.

getDimensionIndex (dimension_name, value)
ParameterExplanationData Type
dimension_name

Dimension name of the NetCDF file.

String
value

The dimension value.

Integer
Return Value
Data TypeExplanation
Integer

The dimension index.

getDimensionSize (dimension_name)
ParameterExplanationData Type
dimension_name

Dimension name of the NetCDF file.

String
Return Value
Data TypeExplanation
Integer

The dimension size.

getDimensionValue (dimension_name, index)
ParameterExplanationData Type
dimension_name

Dimension name of the NetCDF file.

String
index

The index position.

Integer
Return Value
Data TypeExplanation
Object

The dimension value. The type of returned value depends on the dimension type.

getDimensions ()
Return Value
Data TypeExplanation
String

List of dimensions.

getDimensionsByVariable (variable_name)
ParameterExplanationData Type
variable_name

Variable name of the NetCDF file.

String
Return Value
Data TypeExplanation
String

The dimensions by variable.

getFieldType (name)
ParameterExplanationData Type
name

Variable or dimension name of the NetCDF file.

String
Return Value
Data TypeExplanation
String

The field type.

getSpatialReference (variable_name, x_dimension, y_dimension)
ParameterExplanationData Type
variable_name

Variable name of the NetCDF file.

String
x_dimension

The x-dimension.

Integer
y_dimension

The y-dimension.

Integer
Return Value
Data TypeExplanation
SpatialReference

The spatial reference of a variable.

getVariables ()
Return Value
Data TypeExplanation
String

List of variables.

getVariablesByDimension (dimension_name)
ParameterExplanationData Type
dimension_name

Variable name of the netCDF file

String
Return Value
Data TypeExplanation
String

List of variables by dimension

Code sample

NetCDFFileProperties example

Display properties of NetCDF file.

import arcpy

in_netcdf = "c:/NetCDF/crwr.nc"
try:
    nc_fp = arcpy.NetCDFFileProperties(in_netcdf)

    # Get Variables
    for nc_var in nc_fp.getVariables():
        print("Variable: {0}".format(nc_var))
        print("\tVariable type: {0}".format(nc_fp.getFieldType(nc_var)))

        # Get dimensions by variable
        for nc_dim_by_var in nc_fp.getDimensionsByVariable(nc_var):
            print("Dimension: {0}".format(nc_dim_by_var))
        print(nc_fp.getAttributeValue(nc_var, "units"))

        # Get Variable Attribues
        for nc_va_name in nc_fp.getAttributeNames(nc_var):
            print("Attribute Name: {0}".format(nc_va_name))

    # Get Dimensions
    for nc_dim in nc_fp.getDimensions():
        print("Dimension: {0}".format(nc_dim))
        print("\tDimension size: {0}".format(nc_fp.getDimensionSize(nc_dim)))
        print("\tDimension type: {0}".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: {0}".format(nc_dim_value))
            print("\tDimension index: {0}".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: {0}".format(nc_vars_by_dim))

    # Get Global Attribues
    for nc_att_name in nc_fp.getAttributeNames(""):
        print("Attribute Name: {0}".format(nc_att_name))
        print(nc_fp.getAttributeValue("", nc_att_name))

except Exception as err:
    print(err)

Related topics