Available with Image Analyst license.

## Summary

Estimates the trend for each pixel along a dimension for one or more variables in a multidimensional raster.

## Discussion

For more information about how this function works, see the Generate Trend raster function.

The referenced raster dataset for the raster object is temporary. To make it permanent, you can call the raster object's save method.

## Syntax

GenerateTrend (raster, dimension_name, {regression_type}, {cycle_length}, {cycle_unit}, {harmonic_frequency}, {polynomial_order}, {ignore_nodata}, {rmse}, {r2}, {slope_p_value}, {seasonal_period})

Parameter | Explanation | Data Type |

raster | The input multidimensional raster. | Raster |

dimension_name | The name of the dimension along which a trend will be extracted for the variable or variables selected in the analysis. | String |

regression_type | Specifies the type of line to be used to fit to the pixel values along a dimension. - LINEAR—Variable pixel values will be fitted along a linear trend line. This is the default.
- HARMONIC—Variable pixel values will be fitted along a harmonic trend line.
- POLYNOMIAL—Variable pixel values will be fitted along a second-order polynomial trend line.
- MANN-KENDALL—Variable pixel values will be evaluated for monotonic trend using the Mann-Kendall trend test.
- SEASONAL-KENDALL—Variable pixel values will be evaluated for monotonic trend using the Seasonal-Kendall trend test.
(The default value is LINEAR) | String |

cycle_length | The length of periodic variation to model. This argument is required when regression_type is set to HARMONIC. For example, leaf greenness often has one strong cycle of variation in a single year, so cycle_length is 1 year. Hourly temperature data has one strong cycle of variation throughout a single day, so the cycle_length is 1 day. The default value is 1. (The default value is 1) | Integer |

cycle_unit | Specifies the time unit to be used for the length of a harmonic cycle. - DAYS—The unit for the length of the harmonic cycle is days.
- YEARS—The unit for the length of the harmonic cycle is years. This is the default.
(The default value is YEARS) | String |

harmonic_frequency | The number of models to use in the trend fitting when the regression_type is HARMONIC. The default is 1, or one harmonic cycle per year. This argument is only included in the trend analysis when the dimension being analyzed is time. (The default value is 1) | Integer |

polynomial_order | The polynomial order number to use in the trend fitting when the regression_type is POLYNOMIAL. The default is 2, or second-order polynomial. This argument is only included in the trend analysis when the dimension being analyzed is time. (The default value is 2) | Integer |

ignore_nodata | Specifies whether NoData values are ignored in the analysis. - True—The analysis will include all valid pixels along a given dimension and ignore any NoData pixels. This is the default.
- False—The analysis will result in NoData if there are any NoData values for the pixels along the given dimension.
(The default value is True) | Boolean |

rmse | Specifies whether the root mean square error (RMSE) of the trend fit line will be calculated. - True—The RMSE will be calculated. This is the default.
- False—The RMSE will not be calculated.
(The default value is True) | Boolean |

r2 | Specifies whether the R-squared goodness-of-fit statistic for the trend fit line will be calculated. - True—The R-squared value will be calculated.
- False—The R-squared value will not be calculated. This is the default.
(The default value is False) | Boolean |

slope_p_value | Specifies whether the p-value statistic for the slope coefficient of the trend line will be calculated. - True—The p-value will be calculated.
- False—The p-value will not be calculated. This is the default.
(The default value is False) | Boolean |

seasonal_period | Specifies the unit to use for seasonal period. This is required when the regression_type argument is set to SEASONAL-KENDALL. - DAYS—The unit for the length of the seasonal period is days. This is the default.
- MONTHS—The unit for the length of the seasonal period is months.
(The default value is DAYS) | String |

Data Type | Explanation |

Raster | The output raster. |

## Code sample

This example calculates the harmonic trend fit along an NDVI time series.

```
# Import system modulesimport arcpy
import arcpy
from arcpy.ia import *
# Check out the ArcGIS Image Analyst extension license
arcpy.CheckOutExtension("ImageAnalyst")
# Set the local variables
in_multidimensional_raster = "C:/data/ndvi_time_series.crf"
dimension_name = "StdTime"
regression_type = "HARMONIC"
cycle_length = 1
cycle_unit = "YEARS"
harmonic_frequency = 1
polynomial_order = None
ignore_nodata = True
rmse = True
r2 = False
slope_p_value = False
seasonal_period = None
# Apply GenerateTrendRaster function
trend_raster = arcpy.ia.GenerateTrend(in_multidimensional_raster,
dimension_name, regression_type, cycle_length, cycle_unit,
harmonic_frequency, polynomial_order, ignore_nodata, rmse,
r2, slope_p_value, seasonal_period)
# Save the output
trend_raster.save("C:/arcpyExamples/outputs/ndvi_trend_raster.crf")
```