@stdlib/esm
Version:
ES module distribution for Stdlib, a standard library for JavaScript and Node.js.
3 lines • 1.24 kB
JavaScript
// This file is a part of stdlib. License is Apache-2.0: http://www.apache.org/licenses/LICENSE-2.0
import r from"./../../../../utils/define-nonenumerable-read-only-property.js";import t from"./../../../../math/base/assert/is-positive-integer.js";import e from"./../../../../math/base/assert/is-finite.js";import n from"./../../../../math/base/assert/is-nan.js";import i from"./../../../../math/base/special/exp.js";import o from"./../../../../constants/math/float64-ln-two.js";import a from"./../../../../utils/memoize.js";import s from"./../../../../utils/constant-function.js";var f,m=a;function u(r,t){var e;return 0===t?0===r?1:0:(e=t*(t+1)/2,r<0||r>e?0:(r>e/2&&(r=e-r),f(r-t,t-1)+f(r,t-1)))}var p=f=m(u),c=t,l=e,v=n,j=i,N=o,b=f;function h(r,t){var e,n,i;if(v(t)||!c(t)||!l(t))return NaN;if(v(r)||r<0||r>1)return NaN;if(0===r)return 0;if(1===r)return t*(t+1)/2;for(e=j(-t*N),i=0,n=-1;i<r;)i+=e*b(n+=1,t);return n}var d=t,y=s,x=e,g=n,w=i,z=o,k=f;function q(r){var t;return!g(r)&&d(r)&&x(r)?(t=w(-r*z),function(e){var n,i;if(g(e)||e<0||e>1)return NaN;if(0===e)return 0;if(1===e)return r*(r+1)/2;n=0,i=-1;for(;n<e;)n+=t*k(i+=1,r);return i}):y(NaN)}var A=r,B=h,C=q;A(B,"factory",C);export default B;
//# sourceMappingURL=quantile.js.map