Skip to content
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
235 changes: 234 additions & 1 deletion lib/node_modules/@stdlib/stats/base/dists/exponential/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -107,14 +107,247 @@ var y = dist.logpdf( 0.8 );
<!-- TODO: better examples -->

<!-- eslint no-undef: "error" -->

### Object Keys
```javascript
var objectKeys = require( '@stdlib/utils/keys' );
var exponential = require( '@stdlib/stats/base/dists/exponential' );

console.log( objectKeys( exponential ) );
```
### Cumulative Distribution Function (CDF)
```javascript
var exponential = require('@stdlib/stats/base/dists/exponential');
```
#### cdf(x, lambda)

Evaluates the [cumulative distribution function][cdf] of an exponential distribution with rate parameter `lambda`.

```javascript
var y = cdf(1.0, 2.0);
// returns ~0.864

y = cdf(0.5, 1.0);
// returns ~0.393

y = cdf(-1.0, 4.0);
// returns 0.0
```
#### cdf.factory(lambda)

Returns a function for evaluating the [cumulative distribution function][cdf] of an exponential distribution with rate parameter `lambda`.

```javascript
var mycdf = cdf.factory(2.0);

var y = mycdf(1.0);
// returns ~0.864

y = mycdf(0.3);
// returns ~0.451
```
### Logarithm of the Cumulative Distribution Function (logCDF)
```javascript
var logcdf = require('@stdlib/stats/base/dists/exponential/logcdf');
```
#### logcdf(x, lambda)
Evaluates the natural logarithm of the cumulative distribution function for an exponential distribution with rate parameter `lambda`.

```javascript
var y = logcdf(1.0, 2.0);
// returns ~-0.146

y = logcdf(0.5, 1.0);
// returns ~-0.934

y = logcdf(-1.0, 4.0);
// returns -Infinity
```
#### logcdf.factory(lambda)
Returns a function for evaluating the natural logarithm of the cumulative distribution function for an exponential distribution with rate parameter `lambda`.

```javascript
var mylogcdf = logcdf.factory(2.0);

var y = mylogcdf(1.0);
// returns ~-0.146

y = mylogcdf(0.3);
// returns ~-0.797
```
### Probability Density Function(PDF)
```javascript
var pdf = require('@stdlib/stats/base/dists/exponential/pdf');
```

#### pdf(x, lambda)
Evaluates the [probability density function][pdf] of an exponential distribution with rate parameter `lambda`.

```javascript
var y = pdf(1.0, 2.0);
// returns ~0.271

y = pdf(0.5, 1.0);
// returns ~0.607

y = pdf(-1.0, 4.0);
// returns 0.0
```
#### pdf.factory(lambda)
Returns a function for evaluating the [probability density function][pdf] of an exponential distribution with rate parameter `lambda`.
```javascript
var mypdf = pdf.factory(2.0);

var y = mypdf(1.0);
// returns ~0.271

y = mypdf(0.3);
// returns ~0.74
```
### Logarithm of the Probability Density Function (logPDF)
```javascript
var logpdf = require('@stdlib/stats/base/dists/exponential/logpdf');
```
#### logpdf(x, lambda)
Evaluates the natural logarithm of the probability density function for an exponential distribution with rate parameter `lambda`.

```javascript
var y = logpdf(1.0, 2.0);
// returns ~-1.307

y = logpdf(0.5, 1.0);
// returns ~-0.5

y = logpdf(-1.0, 4.0);
// returns -Infinity
```
#### logpdf.factory(lambda)
Returns a function for evaluating the natural logarithm of the probability density function for an exponential distribution with rate parameter `lambda`.

```javascript
var mylogpdf = logpdf.factory(2.0);

var y = mylogpdf(1.0);
// returns ~-1.307

y = mylogpdf(0.3);
// returns ~-0.599
```
### Quantile Function
```javascript
var quantile = require('@stdlib/stats/base/dists/exponential/quantile');
```
#### quantile(p, lambda)
Evaluates the [quantile function][quantile-function] for an exponential distribution with rate parameter `lambda`.
```javascript
var y = quantile(0.8, 2.0);
// returns ~0.916

var y = quantile(0.5, 1.0);
// returns ~0.693
```
#### quantile.factory(lambda)
Returns a function for evaluating the [quantile function][quantile-function] of an exponential distribution with rate parameter `lambda`.
```javascript
var myQuantile = quantile.factory(2.0);

var y = myQuantile(0.4);
// returns ~0.511

var y = myQuantile(1.0);
// returns Infinity
```
### Moment-Generating Function (MGF)
```javascript
var mgf = require('@stdlib/stats/base/dists/exponential/mgf');
```
#### mgf(t, lambda)
Evaluates the [moment-generating function][mgf] of an exponential distribution with rate parameter `lambda`.
```javascript
var y = mgf(1.0, 2.0);
// returns ~1.5

var y = mgf(0.5, 1.0);
// returns ~2.0
```
#### quantile.factory(lambda)
mgf.factory(lambda)
Returns a function for evaluating the [moment-generating function][mgf] of an exponential distribution with rate parameter `lambda`.
```javascript
var mymgf = mgf.factory(2.0);

var y = mymgf(1.0);
// returns ~1.5

var y = mymgf(0.3);
// returns ~1.25
```
### Entropy(lambda)
Evaluates the differential entropy of an exponential distribution with rate parameter `lambda`.
```javascript
var entropy = require('@stdlib/stats/base/dists/exponential/entropy');

var y = entropy(2.0);
// returns ~0.306
```
### Median(lambda)
Evaluates the median of an exponential distribution with rate parameter `lambda`.
```javascript
var median = require('@stdlib/stats/base/dists/exponential/median');

var y = median(2.0);
// returns ~0.347
```
### Mode(lambda)
Evaluates the mode of an exponential distribution with rate parameter `lambda`.
```javascript
var mode = require('@stdlib/stats/base/dists/exponential/mode');

var y = mode(2.0);
// returns 0.0
```
### Skewness(lambda)
Evaluates the skewness of an exponential distribution with rate parameter `lambda`.
```javascript
var skewness = require('@stdlib/stats/base/dists/exponential/skewness');

var y = skewness(2.0);
// returns 2.0
```
### Standard Deviation(lambda)
Evaluates the standard deviation of an exponential distribution with rate parameter `lambda`.
```javascript
var stdev = require('@stdlib/stats/base/dists/exponential/stdev');

var y = stdev(2.0);
// returns 0.5
```
### Variance(lambda)
Evaluates the variance of an exponential distribution with rate parameter `lambda`.
```javascript
var variance = require('@stdlib/stats/base/dists/exponential/variance');

var y = variance(2.0);
// returns 0.25
```
### Using the Constructor
#### Creating an Exponential Distribution Object
```javascript
var Exponential = require('@stdlib/stats/base/dists/exponential').Exponential;

var dist = new Exponential(2.0);

var y = dist.pdf(0.8);
// returns ~0.271
```
#### Using Distribution Object Methods
Evaluate the mean and variance using the distribution object:
```javascript
console.log('Mean: ' + dist.mean);
// Output: Mean: 0.5

console.log('Variance: ' + dist.variance);
// Output: Variance: 0.25
```
</section>

<!-- /.examples -->
Expand Down