# idresamp

Resample time-domain data by decimation or interpolation

## Syntax

`datar = idresamp(data,[P Q])`

datar = idresamp(data,R)

datar = idresamp(___,`opt`

)

[datar,res_fact] = idresamp(___)

## Description

`idresamp`

resamples time-domain data using two different
methods, one which uses Signal Processing Toolbox™ and one which does not.

If you have Signal Processing Toolbox, it is recommended that you use one of the syntaxes that has

`[P,Q]`

as the second argument. The software automatically uses the resampling algorithm from that toolbox.If you do not have Signal Processing Toolbox, then the software automatically uses the resampling algorithm from System Identification Toolbox™ regardless of which syntax you use.

`datar = idresamp(data,[P Q])`

resamples the data
`data`

at `P`

/`Q`

times the
original sample rate and returns the resampled data as `datar`

.
`data`

can be a timetable, a comma-separated pair of numeric
matrices, or an `iddata`

object. The algorithm takes into
account the intersample characteristics of the input signal that are described by the
`InputInterSample`

property in `idresampOptions`

.

`datar = idresamp(data,R)`

resamples `data`

using a sample
time that is a factor `R`

of the original sample interval. This syntax
does not require Signal Processing Toolbox

`datar = idresamp(___,`

incorporates an
option set `opt`

)`opt`

that specifies options in `idresampOptions`

such as filter order, rational approximation tolerance,
and input intersample behavior. You can use this syntax with any of the previous
input-argument combinations.

`[datar,res_fact] = idresamp(___)`

returns
`res_fact`

, which corresponds to the value of `R`

approximated by a rational expression.

## Input Arguments

`data`

Time-domain signal data.

`data`

can be uniformly sampled input-output or time-series data in the form of a timetable, a comma-separated pair of numeric matrices*u*,*y*, or an`iddata`

object.`[P,Q]`

Vector of two positive integers that represent the interpolation and decimation factors that combine to form the sample rate multiplier

`P`

/`Q`

(or equivalently, the sample time multiplier`Q`

/`P`

).Setting

`Q`

/`P`

> 1 results in decimation and setting`Q`

/`P`

< 1 results in interpolation.`opt`

Resampling options, specified as an

`idresampOptions`

option set.

## Output Arguments

`datar`

Name of the resampled data variable.

`datar`

has the same format (timetable, matrix or data object) as`data`

.`res_fact`

Rational approximation for the specified resampling factor

`R`

and tolerance`tol`

.Any positive number you specify is replaced by the rational approximation,

`Q`

/`P`

, where the data is interpolated by a factor`P`

and then decimated by a factor`Q`

.

## Version History

**Introduced in R2007a**