@stdlib/stats-base-dists-triangular 0.2.1 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/NOTICE +1 -1
  2. package/README.md +56 -9
  3. package/package.json +17 -17
package/NOTICE CHANGED
@@ -1 +1 @@
1
- Copyright (c) 2016-2024 The Stdlib Authors.
1
+ Copyright (c) 2016-2026 The Stdlib Authors.
package/README.md CHANGED
@@ -130,15 +130,62 @@ y = dist.quantile( 1.9 );
130
130
 
131
131
  ## Examples
132
132
 
133
- <!-- TODO: better examples -->
134
-
135
133
  <!-- eslint no-undef: "error" -->
136
134
 
137
135
  ```javascript
138
- var objectKeys = require( '@stdlib/utils-keys' );
136
+ var discreteUniform = require( '@stdlib/random-base-discrete-uniform' );
139
137
  var triangular = require( '@stdlib/stats-base-dists-triangular' );
140
138
 
141
- console.log( objectKeys( triangular ) );
139
+ // Scenario: Modeling completion time for a software development task
140
+
141
+ // Define the distribution parameters (in hours):
142
+ var a = 1.5; // Minimum time (best-case scenario)
143
+ var b = 4.5; // Maximum time (worst-case scenario)
144
+ var c = discreteUniform( 2, 4 ); // Most likely time (mode)
145
+ console.log( 'a: %d, b: %d, c: %d', a, b, c );
146
+
147
+ // Expected (mean) completion time:
148
+ var mean = triangular.mean( a, b, c );
149
+ console.log( '\nExpected completion time: %d hours', mean );
150
+
151
+ // Median completion time:
152
+ var median = triangular.median( a, b, c );
153
+ console.log( 'Median completion time: %d hours', median );
154
+
155
+ // Variance in completion time:
156
+ var variance = triangular.variance( a, b, c );
157
+ console.log( 'Variance in completion time: %d hours^2', variance );
158
+
159
+ // Probability of completing the task within 3 hours:
160
+ var x = 3.0;
161
+ var prob = triangular.cdf( x, a, b, c );
162
+ console.log( '\nProbability of completing within %d hours: %d', x, prob );
163
+
164
+ // 90th percentile of completion time:
165
+ var p = 0.9;
166
+ var percentile = triangular.quantile( p, a, b, c );
167
+ console.log( '90% of tasks will be completed within %d hours', percentile );
168
+
169
+ // Relative likelihood of completing the task in exactly 2.5 hours:
170
+ x = 2.5;
171
+ var likelihood = triangular.pdf( x, a, b, c );
172
+ console.log( '\nRelative likelihood of completing in exactly %d hours: %d', x, likelihood );
173
+
174
+ // Skewness to understand the distribution's shape:
175
+ var skewness = triangular.skewness( a, b, c );
176
+ console.log( '\nSkewness of completion times: %d', skewness );
177
+ if ( skewness > 0 ) {
178
+ console.log( 'The distribution is right-skewed, suggesting occasional longer completion times.' );
179
+ } else if ( skewness < 0 ) {
180
+ console.log( 'The distribution is left-skewed, suggesting occasional shorter completion times.' );
181
+ } else {
182
+ console.log( 'The distribution is symmetric.' );
183
+ }
184
+
185
+ // Entropy as a measure of uncertainty in the estimate:
186
+ var entropy = triangular.entropy( a, b, c );
187
+ console.log( '\nEntropy of the distribution: %d nats', entropy );
188
+ console.log( 'Higher entropy indicates more uncertainty in completion times.' );
142
189
  ```
143
190
 
144
191
  </section>
@@ -179,7 +226,7 @@ See [LICENSE][stdlib-license].
179
226
 
180
227
  ## Copyright
181
228
 
182
- Copyright &copy; 2016-2024. The Stdlib [Authors][stdlib-authors].
229
+ Copyright &copy; 2016-2026. The Stdlib [Authors][stdlib-authors].
183
230
 
184
231
  </section>
185
232
 
@@ -192,8 +239,8 @@ Copyright &copy; 2016-2024. The Stdlib [Authors][stdlib-authors].
192
239
  [npm-image]: http://img.shields.io/npm/v/@stdlib/stats-base-dists-triangular.svg
193
240
  [npm-url]: https://npmjs.org/package/@stdlib/stats-base-dists-triangular
194
241
 
195
- [test-image]: https://github.com/stdlib-js/stats-base-dists-triangular/actions/workflows/test.yml/badge.svg?branch=v0.2.1
196
- [test-url]: https://github.com/stdlib-js/stats-base-dists-triangular/actions/workflows/test.yml?query=branch:v0.2.1
242
+ [test-image]: https://github.com/stdlib-js/stats-base-dists-triangular/actions/workflows/test.yml/badge.svg?branch=v0.3.0
243
+ [test-url]: https://github.com/stdlib-js/stats-base-dists-triangular/actions/workflows/test.yml?query=branch:v0.3.0
197
244
 
198
245
  [coverage-image]: https://img.shields.io/codecov/c/github/stdlib-js/stats-base-dists-triangular/main.svg
199
246
  [coverage-url]: https://codecov.io/github/stdlib-js/stats-base-dists-triangular?branch=main
@@ -205,8 +252,8 @@ Copyright &copy; 2016-2024. The Stdlib [Authors][stdlib-authors].
205
252
 
206
253
  -->
207
254
 
208
- [chat-image]: https://img.shields.io/gitter/room/stdlib-js/stdlib.svg
209
- [chat-url]: https://app.gitter.im/#/room/#stdlib-js_stdlib:gitter.im
255
+ [chat-image]: https://img.shields.io/badge/zulip-join_chat-brightgreen.svg
256
+ [chat-url]: https://stdlib.zulipchat.com
210
257
 
211
258
  [stdlib]: https://github.com/stdlib-js/stdlib
212
259
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stdlib/stats-base-dists-triangular",
3
- "version": "0.2.1",
3
+ "version": "0.3.0",
4
4
  "description": "Triangular distribution.",
5
5
  "license": "Apache-2.0",
6
6
  "author": {
@@ -30,22 +30,22 @@
30
30
  "url": "https://github.com/stdlib-js/stdlib/issues"
31
31
  },
32
32
  "dependencies": {
33
- "@stdlib/stats-base-dists-triangular-cdf": "^0.2.1",
34
- "@stdlib/stats-base-dists-triangular-ctor": "^0.2.1",
35
- "@stdlib/stats-base-dists-triangular-entropy": "^0.2.1",
36
- "@stdlib/stats-base-dists-triangular-kurtosis": "^0.2.1",
37
- "@stdlib/stats-base-dists-triangular-logcdf": "^0.2.1",
38
- "@stdlib/stats-base-dists-triangular-logpdf": "^0.2.1",
39
- "@stdlib/stats-base-dists-triangular-mean": "^0.2.1",
40
- "@stdlib/stats-base-dists-triangular-median": "^0.2.1",
41
- "@stdlib/stats-base-dists-triangular-mgf": "^0.2.1",
42
- "@stdlib/stats-base-dists-triangular-mode": "^0.2.1",
43
- "@stdlib/stats-base-dists-triangular-pdf": "^0.2.1",
44
- "@stdlib/stats-base-dists-triangular-quantile": "^0.2.1",
45
- "@stdlib/stats-base-dists-triangular-skewness": "^0.2.1",
46
- "@stdlib/stats-base-dists-triangular-stdev": "^0.2.1",
47
- "@stdlib/stats-base-dists-triangular-variance": "^0.2.1",
48
- "@stdlib/utils-define-read-only-property": "^0.2.1"
33
+ "@stdlib/stats-base-dists-triangular-cdf": "^0.3.0",
34
+ "@stdlib/stats-base-dists-triangular-ctor": "^0.2.2",
35
+ "@stdlib/stats-base-dists-triangular-entropy": "^0.3.0",
36
+ "@stdlib/stats-base-dists-triangular-kurtosis": "^0.3.0",
37
+ "@stdlib/stats-base-dists-triangular-logcdf": "^0.3.0",
38
+ "@stdlib/stats-base-dists-triangular-logpdf": "^0.3.0",
39
+ "@stdlib/stats-base-dists-triangular-mean": "^0.3.0",
40
+ "@stdlib/stats-base-dists-triangular-median": "^0.3.0",
41
+ "@stdlib/stats-base-dists-triangular-mgf": "^0.2.2",
42
+ "@stdlib/stats-base-dists-triangular-mode": "^0.3.0",
43
+ "@stdlib/stats-base-dists-triangular-pdf": "^0.3.0",
44
+ "@stdlib/stats-base-dists-triangular-quantile": "^0.3.0",
45
+ "@stdlib/stats-base-dists-triangular-skewness": "^0.3.0",
46
+ "@stdlib/stats-base-dists-triangular-stdev": "^0.3.0",
47
+ "@stdlib/stats-base-dists-triangular-variance": "^0.3.0",
48
+ "@stdlib/utils-define-read-only-property": "^0.2.2"
49
49
  },
50
50
  "devDependencies": {},
51
51
  "engines": {