mean.transform.js (1003B)
1 import { factory } from '../../utils/factory.js'; 2 import { errorTransform } from './utils/errorTransform.js'; 3 import { createMean } from '../../function/statistics/mean.js'; 4 import { lastDimToZeroBase } from './utils/lastDimToZeroBase.js'; 5 var name = 'mean'; 6 var dependencies = ['typed', 'add', 'divide']; 7 export var createMeanTransform = /* #__PURE__ */factory(name, dependencies, _ref => { 8 var { 9 typed, 10 add, 11 divide 12 } = _ref; 13 var mean = createMean({ 14 typed, 15 add, 16 divide 17 }); 18 /** 19 * Attach a transform function to math.mean 20 * Adds a property transform containing the transform function. 21 * 22 * This transform changed the last `dim` parameter of function mean 23 * from one-based to zero based 24 */ 25 26 return typed('mean', { 27 '...any': function any(args) { 28 args = lastDimToZeroBase(args); 29 30 try { 31 return mean.apply(null, args); 32 } catch (err) { 33 throw errorTransform(err); 34 } 35 } 36 }); 37 }, { 38 isTransformFunction: true 39 });