# fractions: Rational Approximation In MASS: Support Functions and Datasets for Venables and Ripley's MASS

 fractions R Documentation

## Rational Approximation

### Description

Find rational approximations to the components of a real numeric object using a standard continued fraction method.

### Usage

```fractions(x, cycles = 10, max.denominator = 2000, ...)
```

### Arguments

 `x` Any object of mode numeric. Missing values are now allowed. `cycles` The maximum number of steps to be used in the continued fraction approximation process. `max.denominator` An early termination criterion. If any partial denominator exceeds `max.denominator` the continued fraction stops at that point. `...` arguments passed to or from other methods.

### Details

Each component is first expanded in a continued fraction of the form

`x = floor(x) + 1/(p1 + 1/(p2 + ...)))`

where `p1`, `p2`, ... are positive integers, terminating either at `cycles` terms or when a `pj > max.denominator`. The continued fraction is then re-arranged to retrieve the numerator and denominator as integers.

The numerators and denominators are then combined into a character vector that becomes the `"fracs"` attribute and used in printed representations.

Arithmetic operations on `"fractions"` objects have full floating point accuracy, but the character representation printed out may not.

### Value

An object of class `"fractions"`. A structure with `.Data` component the same as the input numeric `x`, but with the rational approximations held as a character vector attribute, `"fracs"`. Arithmetic operations on `"fractions"` objects are possible.

### References

Venables, W. N. and Ripley, B. D. (2002) Modern Applied Statistics with S. Fourth Edition. Springer.

`rational`

### Examples

```X <- matrix(runif(25), 5, 5)
zapsmall(solve(X, X/5)) # print near-zeroes as zero
fractions(solve(X, X/5))
fractions(solve(X, X/5)) + 1
```

MASS documentation built on Aug. 3, 2022, 5:05 p.m.