lakutata 2.0.82 → 2.0.83
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.
- package/com/docker.cjs +1 -1
- package/com/docker.mjs +1 -1
- package/decorator/orm.cjs +84 -84
- package/decorator/orm.mjs +42 -128
- package/orm.cjs +871 -1408
- package/orm.mjs +712 -1462
- package/package.json +1 -1
- package/src/components/Database.cjs +2 -2
- package/src/components/Database.mjs +6 -6
- package/src/components/cacher/Cacher.cjs +129 -129
- package/src/components/cacher/Cacher.mjs +117 -117
- package/src/components/cacher/adapters/CreateFileCacheAdapter.cjs +303 -312
- package/src/components/cacher/adapters/CreateFileCacheAdapter.mjs +304 -313
- package/src/components/cacher/adapters/CreateMemcacheCacheAdapter.cjs +12 -12
- package/src/components/cacher/adapters/CreateMemcacheCacheAdapter.mjs +11 -11
- package/src/components/cacher/adapters/CreateMongoCacheAdapter.cjs +16 -16
- package/src/components/cacher/adapters/CreateMongoCacheAdapter.mjs +14 -14
- package/src/components/cacher/adapters/CreateMysqlCacheAdapter.cjs +11 -11
- package/src/components/cacher/adapters/CreateMysqlCacheAdapter.mjs +11 -11
- package/src/components/cacher/adapters/CreatePostgresCacheAdapter.cjs +12 -12
- package/src/components/cacher/adapters/CreatePostgresCacheAdapter.mjs +13 -13
- package/src/components/cacher/adapters/CreateRedisCacheAdapter.cjs +2 -2
- package/src/components/cacher/adapters/CreateRedisCacheAdapter.mjs +2 -2
- package/src/components/cacher/adapters/CreateSqliteCacheAdapter.cjs +10 -10
- package/src/components/cacher/adapters/CreateSqliteCacheAdapter.mjs +10 -10
- package/src/components/cacher/lib/IsDriverPackageInstalled.cjs +2 -2
- package/src/components/cacher/lib/IsDriverPackageInstalled.mjs +5 -5
- package/src/components/docker/ConnectionOptionsBuilder.cjs +11 -11
- package/src/components/docker/ConnectionOptionsBuilder.mjs +7 -7
- package/src/components/docker/Docker.cjs +5067 -4956
- package/src/components/docker/Docker.mjs +4982 -4871
- package/src/components/docker/lib/DockerContainer.cjs +1 -1
- package/src/components/docker/lib/DockerContainer.mjs +1 -1
- package/src/components/docker/lib/DockerContainerTTY.cjs +1 -1
- package/src/components/docker/lib/DockerContainerTTY.mjs +1 -1
- package/src/components/docker/lib/ParseEnvToRecord.cjs +2 -2
- package/src/components/docker/lib/ParseEnvToRecord.mjs +12 -12
- package/src/components/docker/lib/ParseRepositoryTag.cjs +9 -9
- package/src/components/docker/lib/ParseRepositoryTag.mjs +11 -11
- package/src/components/entrypoint/Entrypoint.cjs +1678 -2168
- package/src/components/entrypoint/Entrypoint.mjs +1680 -2170
- package/src/components/monitor/AliveMonitor.cjs +2 -2
- package/src/components/monitor/AliveMonitor.mjs +2 -2
- package/src/components/monitor/MemoryMonitor.cjs +3 -3
- package/src/decorators/asst/After.cjs +3 -3
- package/src/decorators/asst/After.mjs +2 -2
- package/src/decorators/asst/Before.cjs +2 -2
- package/src/decorators/asst/Before.mjs +4 -4
- package/src/decorators/ctrl/CLIAction.cjs +2 -2
- package/src/decorators/ctrl/CLIAction.mjs +7 -7
- package/src/decorators/ctrl/HTTPAction.cjs +6 -6
- package/src/decorators/ctrl/HTTPAction.mjs +4 -4
- package/src/decorators/ctrl/ServiceAction.cjs +3 -3
- package/src/decorators/ctrl/ServiceAction.mjs +4 -4
- package/src/decorators/ctrl/http/DELETE.cjs +2 -2
- package/src/decorators/ctrl/http/DELETE.mjs +2 -2
- package/src/decorators/ctrl/http/GET.cjs +2 -2
- package/src/decorators/ctrl/http/GET.mjs +2 -2
- package/src/decorators/ctrl/http/HEAD.cjs +2 -2
- package/src/decorators/ctrl/http/HEAD.mjs +2 -2
- package/src/decorators/ctrl/http/OPTIONS.cjs +2 -2
- package/src/decorators/ctrl/http/OPTIONS.mjs +2 -2
- package/src/decorators/ctrl/http/PATCH.cjs +2 -2
- package/src/decorators/ctrl/http/PATCH.mjs +2 -2
- package/src/decorators/ctrl/http/POST.cjs +2 -2
- package/src/decorators/ctrl/http/POST.mjs +2 -2
- package/src/decorators/ctrl/http/PUT.cjs +2 -2
- package/src/decorators/ctrl/http/PUT.mjs +2 -2
- package/src/decorators/di/Autoload.cjs +2 -2
- package/src/decorators/di/Autoload.mjs +2 -2
- package/src/decorators/di/Configurable.cjs +3 -3
- package/src/decorators/di/Configurable.mjs +2 -2
- package/src/decorators/di/Inject.cjs +6 -6
- package/src/decorators/di/Inject.mjs +11 -11
- package/src/decorators/di/Lifetime.cjs +18 -18
- package/src/decorators/di/Lifetime.mjs +13 -13
- package/src/decorators/dto/Accept.cjs +3 -3
- package/src/decorators/dto/Accept.mjs +2 -2
- package/src/decorators/dto/Expect.cjs +2 -2
- package/src/decorators/dto/Expect.mjs +3 -3
- package/src/decorators/dto/IndexSignature.cjs +2 -2
- package/src/decorators/dto/IndexSignature.mjs +3 -3
- package/src/decorators/dto/Return.cjs +3 -3
- package/src/decorators/dto/Return.mjs +2 -2
- package/src/decorators/orm/AfterInsert.cjs +26 -4
- package/src/decorators/orm/AfterInsert.mjs +25 -5
- package/src/decorators/orm/AfterLoad.cjs +26 -4
- package/src/decorators/orm/AfterLoad.mjs +25 -5
- package/src/decorators/orm/AfterRecover.cjs +26 -4
- package/src/decorators/orm/AfterRecover.mjs +25 -5
- package/src/decorators/orm/AfterRemove.cjs +26 -4
- package/src/decorators/orm/AfterRemove.mjs +25 -5
- package/src/decorators/orm/AfterSoftRemove.cjs +26 -4
- package/src/decorators/orm/AfterSoftRemove.mjs +25 -5
- package/src/decorators/orm/AfterUpdate.cjs +26 -4
- package/src/decorators/orm/AfterUpdate.mjs +25 -5
- package/src/decorators/orm/BeforeInsert.cjs +26 -4
- package/src/decorators/orm/BeforeInsert.mjs +25 -5
- package/src/decorators/orm/BeforeRecover.cjs +26 -4
- package/src/decorators/orm/BeforeRecover.mjs +25 -5
- package/src/decorators/orm/BeforeRemove.cjs +26 -4
- package/src/decorators/orm/BeforeRemove.mjs +25 -5
- package/src/decorators/orm/BeforeSoftRemove.cjs +26 -4
- package/src/decorators/orm/BeforeSoftRemove.mjs +25 -5
- package/src/decorators/orm/BeforeUpdate.cjs +26 -4
- package/src/decorators/orm/BeforeUpdate.mjs +25 -5
- package/src/decorators/orm/Check.cjs +29 -4
- package/src/decorators/orm/Check.mjs +28 -5
- package/src/decorators/orm/ChildEntity.cjs +29 -4
- package/src/decorators/orm/ChildEntity.mjs +28 -5
- package/src/decorators/orm/Column.cjs +61 -4
- package/src/decorators/orm/Column.mjs +61 -6
- package/src/decorators/orm/CreateDateColumn.cjs +25 -4
- package/src/decorators/orm/CreateDateColumn.mjs +24 -5
- package/src/decorators/orm/DeleteDateColumn.cjs +25 -4
- package/src/decorators/orm/DeleteDateColumn.mjs +23 -4
- package/src/decorators/orm/Entity.cjs +35 -4
- package/src/decorators/orm/Entity.mjs +33 -4
- package/src/decorators/orm/EventSubscriber.cjs +22 -4
- package/src/decorators/orm/EventSubscriber.mjs +21 -5
- package/src/decorators/orm/Exclusion.cjs +29 -4
- package/src/decorators/orm/Exclusion.mjs +28 -5
- package/src/decorators/orm/Generated.cjs +24 -4
- package/src/decorators/orm/Generated.mjs +23 -5
- package/src/decorators/orm/Index.cjs +41 -4
- package/src/decorators/orm/Index.mjs +41 -6
- package/src/decorators/orm/JoinColumn.cjs +29 -4
- package/src/decorators/orm/JoinColumn.mjs +28 -5
- package/src/decorators/orm/JoinTable.cjs +30 -4
- package/src/decorators/orm/JoinTable.mjs +28 -4
- package/src/decorators/orm/ManyToMany.cjs +42 -4
- package/src/decorators/orm/ManyToMany.mjs +40 -4
- package/src/decorators/orm/ManyToOne.cjs +42 -4
- package/src/decorators/orm/ManyToOne.mjs +40 -4
- package/src/decorators/orm/ObjectIdColumn.cjs +28 -4
- package/src/decorators/orm/ObjectIdColumn.mjs +27 -5
- package/src/decorators/orm/OneToMany.cjs +34 -4
- package/src/decorators/orm/OneToMany.mjs +34 -6
- package/src/decorators/orm/OneToOne.cjs +42 -4
- package/src/decorators/orm/OneToOne.mjs +40 -4
- package/src/decorators/orm/PrimaryColumn.cjs +49 -4
- package/src/decorators/orm/PrimaryColumn.mjs +49 -6
- package/src/decorators/orm/PrimaryGeneratedColumn.cjs +54 -4
- package/src/decorators/orm/PrimaryGeneratedColumn.mjs +54 -6
- package/src/decorators/orm/RelationId.cjs +26 -4
- package/src/decorators/orm/RelationId.mjs +25 -5
- package/src/decorators/orm/TableInheritance.cjs +26 -4
- package/src/decorators/orm/TableInheritance.mjs +25 -5
- package/src/decorators/orm/Tree.cjs +24 -4
- package/src/decorators/orm/Tree.mjs +23 -5
- package/src/decorators/orm/TreeChildren.cjs +31 -4
- package/src/decorators/orm/TreeChildren.mjs +29 -4
- package/src/decorators/orm/TreeLevelColumn.cjs +25 -4
- package/src/decorators/orm/TreeLevelColumn.mjs +23 -4
- package/src/decorators/orm/TreeParent.cjs +31 -4
- package/src/decorators/orm/TreeParent.mjs +29 -4
- package/src/decorators/orm/Unique.cjs +44 -4
- package/src/decorators/orm/Unique.mjs +44 -6
- package/src/decorators/orm/UpdateDateColumn.cjs +25 -4
- package/src/decorators/orm/UpdateDateColumn.mjs +24 -5
- package/src/decorators/orm/VersionColumn.cjs +25 -4
- package/src/decorators/orm/VersionColumn.mjs +24 -5
- package/src/decorators/orm/ViewColumn.cjs +25 -4
- package/src/decorators/orm/ViewColumn.mjs +24 -5
- package/src/decorators/orm/ViewEntity.cjs +34 -4
- package/src/decorators/orm/ViewEntity.mjs +33 -5
- package/src/decorators/orm/VirtualColumn.cjs +42 -4
- package/src/decorators/orm/VirtualColumn.mjs +40 -4
- package/src/lib/base/EventEmitter.cjs +1195 -1202
- package/src/lib/base/EventEmitter.mjs +1195 -1202
- package/src/lib/base/async-constructor/Append.cjs +11 -11
- package/src/lib/base/async-constructor/Append.mjs +7 -7
- package/src/lib/base/internal/BasicInfo.cjs +10 -10
- package/src/lib/base/internal/BasicInfo.mjs +9 -9
- package/src/lib/base/internal/CamelCase.cjs +4 -4
- package/src/lib/base/internal/CamelCase.mjs +11 -11
- package/src/lib/base/internal/ConfigurableRecordsInjection.cjs +19 -19
- package/src/lib/base/internal/ConfigurableRecordsInjection.mjs +18 -18
- package/src/lib/base/internal/ConstructorSymbol.cjs +10 -10
- package/src/lib/base/internal/ConstructorSymbol.mjs +8 -8
- package/src/lib/base/internal/ControllerEntrypoint.cjs +65 -65
- package/src/lib/base/internal/ControllerEntrypoint.mjs +36 -36
- package/src/lib/base/internal/DataValidator.cjs +185 -174
- package/src/lib/base/internal/DataValidator.mjs +230 -219
- package/src/lib/base/internal/GetActionDTOAndOptions.cjs +9 -9
- package/src/lib/base/internal/GetActionDTOAndOptions.mjs +10 -10
- package/src/lib/base/internal/IEEE754.cjs +74 -74
- package/src/lib/base/internal/IEEE754.mjs +70 -70
- package/src/lib/base/internal/MethodAssistantFunction.cjs +28 -28
- package/src/lib/base/internal/MethodAssistantFunction.mjs +38 -38
- package/src/lib/base/internal/MethodValidation.cjs +25 -25
- package/src/lib/base/internal/MethodValidation.mjs +20 -20
- package/src/lib/base/internal/ObjectConfiguration.cjs +10 -10
- package/src/lib/base/internal/ObjectConfiguration.mjs +15 -15
- package/src/lib/base/internal/ObjectContainer.cjs +7 -7
- package/src/lib/base/internal/ObjectContainer.mjs +6 -6
- package/src/lib/base/internal/ObjectInjection.cjs +16 -16
- package/src/lib/base/internal/ObjectInjection.mjs +13 -13
- package/src/lib/base/internal/ObjectLifetime.cjs +10 -10
- package/src/lib/base/internal/ObjectLifetime.mjs +9 -9
- package/src/lib/base/internal/ObjectWeakRefs.cjs +11 -11
- package/src/lib/base/internal/ObjectWeakRefs.mjs +9 -9
- package/src/lib/base/internal/PatternManager.cjs +739 -744
- package/src/lib/base/internal/PatternManager.mjs +743 -748
- package/src/lib/base/internal/StringifyPattern.cjs +26 -26
- package/src/lib/base/internal/StringifyPattern.mjs +26 -26
- package/src/lib/base/internal/ThrowWarning.cjs +2 -2
- package/src/lib/base/internal/ThrowWarning.mjs +2 -2
- package/src/lib/core/Alias.cjs +5 -5
- package/src/lib/core/Application.cjs +115 -128
- package/src/lib/core/Application.mjs +135 -148
- package/src/lib/helpers/ArrayToSet.cjs +2 -2
- package/src/lib/helpers/ArrayToSet.mjs +3 -3
- package/src/lib/helpers/As.cjs +2 -2
- package/src/lib/helpers/As.mjs +2 -2
- package/src/lib/helpers/ConvertArrayLikeToIterable.cjs +3 -3
- package/src/lib/helpers/ConvertArrayLikeToIterable.mjs +3 -3
- package/src/lib/helpers/ConvertArrayLikeToStream.cjs +2 -2
- package/src/lib/helpers/ConvertArrayLikeToStream.mjs +2 -2
- package/src/lib/helpers/Delay.cjs +2 -2
- package/src/lib/helpers/Delay.mjs +2 -2
- package/src/lib/helpers/DevNull.cjs +2 -2
- package/src/lib/helpers/DevNull.mjs +2 -2
- package/src/lib/helpers/GetObjectNestingDepth.cjs +12 -12
- package/src/lib/helpers/GetObjectNestingDepth.mjs +11 -11
- package/src/lib/helpers/GetObjectPropertyPaths.cjs +7 -7
- package/src/lib/helpers/GetObjectPropertyPaths.mjs +9 -9
- package/src/lib/helpers/Glob.cjs +890 -890
- package/src/lib/helpers/Glob.mjs +889 -889
- package/src/lib/helpers/GraceExit.cjs +3 -3
- package/src/lib/helpers/GraceExit.mjs +7 -7
- package/src/lib/helpers/HexToIEEE754.cjs +4 -4
- package/src/lib/helpers/HexToIEEE754.mjs +2 -2
- package/src/lib/helpers/HexToSigned.cjs +5 -5
- package/src/lib/helpers/HexToSigned.mjs +4 -4
- package/src/lib/helpers/HexToUnsigned.cjs +2 -2
- package/src/lib/helpers/HexToUnsigned.mjs +2 -2
- package/src/lib/helpers/IEEE754ToHex.cjs +5 -5
- package/src/lib/helpers/IEEE754ToHex.mjs +5 -5
- package/src/lib/helpers/IsAbortError.cjs +2 -2
- package/src/lib/helpers/IsAbortError.mjs +3 -3
- package/src/lib/helpers/IsEmptyObject.cjs +3 -3
- package/src/lib/helpers/IsEmptyObject.mjs +3 -3
- package/src/lib/helpers/IsExists.cjs +5 -5
- package/src/lib/helpers/IsExists.mjs +4 -4
- package/src/lib/helpers/IsHtml.cjs +8 -18
- package/src/lib/helpers/IsHtml.mjs +8 -18
- package/src/lib/helpers/IsNativeFunction.cjs +2 -2
- package/src/lib/helpers/IsNativeFunction.mjs +2 -2
- package/src/lib/helpers/IsPath.cjs +2 -2
- package/src/lib/helpers/IsPath.mjs +5 -5
- package/src/lib/helpers/IsPromise.cjs +2 -2
- package/src/lib/helpers/IsPromise.mjs +2 -2
- package/src/lib/helpers/IsPromiseLike.cjs +5 -5
- package/src/lib/helpers/IsPromiseLike.mjs +6 -6
- package/src/lib/helpers/IsXML.cjs +1531 -1525
- package/src/lib/helpers/IsXML.mjs +1527 -1521
- package/src/lib/helpers/MD5.cjs +2 -2
- package/src/lib/helpers/MD5.mjs +2 -2
- package/src/lib/helpers/MergeArray.cjs +3 -3
- package/src/lib/helpers/MergeArray.mjs +3 -3
- package/src/lib/helpers/MergeMap.cjs +3 -3
- package/src/lib/helpers/MergeMap.mjs +3 -3
- package/src/lib/helpers/MergeSet.cjs +2 -2
- package/src/lib/helpers/MergeSet.mjs +3 -3
- package/src/lib/helpers/NoCase.cjs +27 -27
- package/src/lib/helpers/NoCase.mjs +24 -24
- package/src/lib/helpers/NonceStr.cjs +2 -2
- package/src/lib/helpers/NonceStr.mjs +2 -2
- package/src/lib/helpers/ObjectConstructor.cjs +2 -2
- package/src/lib/helpers/ObjectConstructor.mjs +4 -4
- package/src/lib/helpers/ObjectHash.cjs +377 -384
- package/src/lib/helpers/ObjectHash.mjs +373 -380
- package/src/lib/helpers/ObjectParentConstructor.cjs +2 -2
- package/src/lib/helpers/ObjectParentConstructor.mjs +5 -5
- package/src/lib/helpers/ObjectParentConstructors.cjs +6 -6
- package/src/lib/helpers/ObjectParentConstructors.mjs +2 -2
- package/src/lib/helpers/ObjectPrototype.cjs +2 -2
- package/src/lib/helpers/ObjectPrototype.mjs +2 -2
- package/src/lib/helpers/ObjectToMap.cjs +2 -2
- package/src/lib/helpers/ObjectToMap.mjs +3 -3
- package/src/lib/helpers/Paginator.cjs +2 -2
- package/src/lib/helpers/Paginator.mjs +6 -6
- package/src/lib/helpers/RandomString.cjs +148 -169
- package/src/lib/helpers/RandomString.mjs +145 -166
- package/src/lib/helpers/SHA1.cjs +2 -2
- package/src/lib/helpers/SHA1.mjs +2 -2
- package/src/lib/helpers/SHA256.cjs +2 -2
- package/src/lib/helpers/SHA256.mjs +2 -2
- package/src/lib/helpers/SetToArray.cjs +2 -2
- package/src/lib/helpers/SetToArray.mjs +2 -2
- package/src/lib/helpers/SignedToHex.cjs +4 -4
- package/src/lib/helpers/SignedToHex.mjs +4 -4
- package/src/lib/helpers/SortArray.cjs +16 -16
- package/src/lib/helpers/SortArray.mjs +15 -15
- package/src/lib/helpers/SortKeys.cjs +41 -41
- package/src/lib/helpers/SortKeys.mjs +41 -41
- package/src/lib/helpers/SortObject.cjs +2 -2
- package/src/lib/helpers/SortObject.mjs +2 -2
- package/src/lib/helpers/Templating.cjs +25 -25
- package/src/lib/helpers/Templating.mjs +25 -25
- package/src/lib/helpers/URLBuilder.cjs +355 -355
- package/src/lib/helpers/URLBuilder.mjs +349 -349
- package/src/lib/helpers/UniqueArray.cjs +3 -3
- package/src/lib/helpers/UniqueArray.mjs +2 -2
- package/src/lib/helpers/UnsignedToHex.cjs +3 -3
- package/src/lib/helpers/UnsignedToHex.mjs +3 -3
- package/src/lib/ioc/DependencyInjectionContainer.cjs +106 -106
- package/src/lib/ioc/DependencyInjectionContainer.mjs +122 -122
- package/src/lib/ioc/FunctionTokenizer.cjs +115 -115
- package/src/lib/ioc/FunctionTokenizer.mjs +102 -102
- package/src/lib/ioc/Lifetime.cjs +5 -5
- package/src/lib/ioc/Lifetime.mjs +5 -5
- package/src/lib/ioc/ListModules.cjs +5298 -5221
- package/src/lib/ioc/ListModules.mjs +5258 -5181
- package/src/lib/ioc/LoadModules.cjs +56 -56
- package/src/lib/ioc/LoadModules.mjs +69 -69
- package/src/lib/ioc/ParamParser.cjs +30 -30
- package/src/lib/ioc/ParamParser.mjs +41 -41
- package/src/lib/ioc/Resolvers.cjs +87 -87
- package/src/lib/ioc/Resolvers.mjs +109 -109
- package/src/lib/ioc/Utils.cjs +12 -12
- package/src/lib/ioc/Utils.mjs +18 -18
- package/src/lib/validation/VLD.cjs +4025 -4202
- package/src/lib/validation/VLD.mjs +2972 -3149
- package/src/providers/Database.cjs +2 -2
- package/src/providers/Database.mjs +7 -7
- package/src/providers/PasswordHash.cjs +330 -330
- package/src/providers/PasswordHash.mjs +397 -397
- package/src/providers/migration/GenerateMigration.cjs +2 -2
- package/src/providers/migration/GenerateMigration.mjs +2 -2
- package/vendor/Package.1.cjs +256 -256
- package/vendor/Package.1.mjs +254 -254
- package/vendor/Package.112.cjs +42157 -42076
- package/vendor/Package.112.mjs +42222 -42081
- package/vendor/Package.13.cjs +36 -36
- package/vendor/Package.13.mjs +24 -24
- package/vendor/Package.16.cjs +12351 -12233
- package/vendor/Package.16.mjs +12348 -12230
- package/vendor/Package.17.cjs +924 -924
- package/vendor/Package.17.mjs +943 -943
- package/vendor/Package.18.cjs +48229 -20
- package/vendor/Package.18.mjs +48192 -24
- package/vendor/Package.2.cjs +5824 -5853
- package/vendor/Package.2.mjs +5780 -5809
- package/vendor/Package.3.cjs +60 -60
- package/vendor/Package.3.mjs +85 -85
- package/vendor/Package.4.cjs +874 -884
- package/vendor/Package.4.mjs +877 -887
- package/vendor/Package.5.cjs +15 -19
- package/vendor/Package.5.mjs +10 -14
- package/vendor/Package.6.cjs +2058 -2067
- package/vendor/Package.6.mjs +2064 -2073
- package/vendor/Package.610.cjs +9 -9
- package/vendor/Package.611.cjs +39 -39
- package/vendor/Package.611.mjs +22 -22
- package/vendor/Package.612.cjs +33 -33
- package/vendor/Package.612.mjs +17 -17
- package/vendor/Package.613.cjs +62 -62
- package/vendor/Package.613.mjs +29 -29
- package/vendor/Package.62.cjs +295 -298
- package/vendor/Package.62.mjs +278 -281
- package/vendor/Package.63.cjs +354 -354
- package/vendor/Package.63.mjs +229 -229
- package/vendor/Package.64.cjs +74 -74
- package/vendor/Package.64.mjs +74 -74
- package/vendor/Package.65.cjs +1851 -1858
- package/vendor/Package.65.mjs +1693 -1700
- package/vendor/Package.66.cjs +16 -16
- package/vendor/Package.66.mjs +16 -16
- package/vendor/Package.67.cjs +87 -87
- package/vendor/Package.67.mjs +85 -85
- package/vendor/Package.68.cjs +14 -14
- package/vendor/Package.68.mjs +6 -6
- package/vendor/Package.69.cjs +8 -8
- package/vendor/Package.7.cjs +3 -3
- package/vendor/Package.7.mjs +3 -3
- package/vendor/Package.9.cjs +124 -138
- package/vendor/Package.9.mjs +121 -135
- package/vendor/TypeDef.internal.3.d.ts +0 -14
- package/vendor/Package.19.cjs +0 -37
- package/vendor/Package.19.mjs +0 -35
- package/vendor/Package.20.cjs +0 -37
- package/vendor/Package.20.mjs +0 -35
- package/vendor/Package.21.cjs +0 -37
- package/vendor/Package.21.mjs +0 -35
- package/vendor/Package.22.cjs +0 -37
- package/vendor/Package.22.mjs +0 -35
- package/vendor/Package.23.cjs +0 -37
- package/vendor/Package.23.mjs +0 -35
- package/vendor/Package.24.cjs +0 -37
- package/vendor/Package.24.mjs +0 -35
- package/vendor/Package.25.cjs +0 -37
- package/vendor/Package.25.mjs +0 -35
- package/vendor/Package.26.cjs +0 -37
- package/vendor/Package.26.mjs +0 -35
- package/vendor/Package.27.cjs +0 -37
- package/vendor/Package.27.mjs +0 -35
- package/vendor/Package.28.cjs +0 -37
- package/vendor/Package.28.mjs +0 -35
- package/vendor/Package.29.cjs +0 -40
- package/vendor/Package.29.mjs +0 -38
- package/vendor/Package.30.cjs +0 -41
- package/vendor/Package.30.mjs +0 -39
- package/vendor/Package.31.cjs +0 -72
- package/vendor/Package.31.mjs +0 -70
- package/vendor/Package.32.cjs +0 -37
- package/vendor/Package.32.mjs +0 -35
- package/vendor/Package.33.cjs +0 -37
- package/vendor/Package.33.mjs +0 -35
- package/vendor/Package.34.cjs +0 -46
- package/vendor/Package.34.mjs +0 -44
- package/vendor/Package.35.cjs +0 -34
- package/vendor/Package.35.mjs +0 -32
- package/vendor/Package.36.cjs +0 -40
- package/vendor/Package.36.mjs +0 -38
- package/vendor/Package.37.cjs +0 -36
- package/vendor/Package.37.mjs +0 -34
- package/vendor/Package.38.cjs +0 -52
- package/vendor/Package.38.mjs +0 -50
- package/vendor/Package.39.cjs +0 -41
- package/vendor/Package.39.mjs +0 -39
- package/vendor/Package.40.cjs +0 -42
- package/vendor/Package.40.mjs +0 -40
- package/vendor/Package.41.cjs +0 -53
- package/vendor/Package.41.mjs +0 -51
- package/vendor/Package.42.cjs +0 -53
- package/vendor/Package.42.mjs +0 -51
- package/vendor/Package.43.cjs +0 -40
- package/vendor/Package.43.mjs +0 -38
- package/vendor/Package.44.cjs +0 -46
- package/vendor/Package.44.mjs +0 -44
- package/vendor/Package.45.cjs +0 -53
- package/vendor/Package.45.mjs +0 -51
- package/vendor/Package.46.cjs +0 -59
- package/vendor/Package.46.mjs +0 -57
- package/vendor/Package.47.cjs +0 -65
- package/vendor/Package.47.mjs +0 -63
- package/vendor/Package.48.cjs +0 -38
- package/vendor/Package.48.mjs +0 -36
- package/vendor/Package.49.cjs +0 -38
- package/vendor/Package.49.mjs +0 -36
- package/vendor/Package.50.cjs +0 -36
- package/vendor/Package.50.mjs +0 -34
- package/vendor/Package.51.cjs +0 -43
- package/vendor/Package.51.mjs +0 -41
- package/vendor/Package.52.cjs +0 -37
- package/vendor/Package.52.mjs +0 -35
- package/vendor/Package.53.cjs +0 -43
- package/vendor/Package.53.mjs +0 -41
- package/vendor/Package.54.cjs +0 -55
- package/vendor/Package.54.mjs +0 -53
- package/vendor/Package.55.cjs +0 -37
- package/vendor/Package.55.mjs +0 -35
- package/vendor/Package.56.cjs +0 -37
- package/vendor/Package.56.mjs +0 -35
- package/vendor/Package.57.cjs +0 -37
- package/vendor/Package.57.mjs +0 -35
- package/vendor/Package.58.cjs +0 -45
- package/vendor/Package.58.mjs +0 -43
- package/vendor/Package.59.cjs +0 -53
- package/vendor/Package.59.mjs +0 -51
- package/vendor/Package.60.cjs +0 -47649
- package/vendor/Package.60.mjs +0 -47606
package/vendor/Package.17.cjs
CHANGED
|
@@ -1,563 +1,563 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function
|
|
4
|
-
var e;
|
|
3
|
+
function r(r) {
|
|
5
4
|
var t;
|
|
5
|
+
var e;
|
|
6
6
|
var n = r.length;
|
|
7
7
|
if (n === 1) {
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
t = 0;
|
|
9
|
+
e = r[0][1];
|
|
10
10
|
} else {
|
|
11
11
|
var a = 0;
|
|
12
|
-
var i = 0;
|
|
13
12
|
var o = 0;
|
|
13
|
+
var i = 0;
|
|
14
14
|
var u = 0;
|
|
15
|
-
var s;
|
|
16
|
-
var l;
|
|
17
15
|
var f;
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
f = s
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
16
|
+
var v;
|
|
17
|
+
var h;
|
|
18
|
+
for (var s = 0; s < n; s++) {
|
|
19
|
+
f = r[s];
|
|
20
|
+
v = f[0];
|
|
21
|
+
h = f[1];
|
|
22
|
+
a += v;
|
|
23
|
+
o += h;
|
|
24
|
+
i += v * v;
|
|
25
|
+
u += v * h;
|
|
26
|
+
}
|
|
27
|
+
t = (n * u - a * o) / (n * i - a * a);
|
|
28
|
+
e = o / n - t * a / n;
|
|
29
29
|
}
|
|
30
30
|
return {
|
|
31
|
-
m:
|
|
32
|
-
b:
|
|
31
|
+
m: t,
|
|
32
|
+
b: e
|
|
33
33
|
};
|
|
34
34
|
}
|
|
35
35
|
|
|
36
|
-
function
|
|
37
|
-
return function(
|
|
38
|
-
return r.b + r.m *
|
|
36
|
+
function t(r) {
|
|
37
|
+
return function(t) {
|
|
38
|
+
return r.b + r.m * t;
|
|
39
39
|
};
|
|
40
40
|
}
|
|
41
41
|
|
|
42
|
-
function
|
|
42
|
+
function e(r) {
|
|
43
43
|
if (r.length === 0) {
|
|
44
44
|
return 0;
|
|
45
45
|
}
|
|
46
|
-
var
|
|
47
|
-
var
|
|
46
|
+
var t = r[0];
|
|
47
|
+
var e = 0;
|
|
48
48
|
var n;
|
|
49
|
-
if (typeof
|
|
49
|
+
if (typeof t !== "number") {
|
|
50
50
|
return Number.NaN;
|
|
51
51
|
}
|
|
52
52
|
for (var a = 1; a < r.length; a++) {
|
|
53
53
|
if (typeof r[a] !== "number") {
|
|
54
54
|
return Number.NaN;
|
|
55
55
|
}
|
|
56
|
-
n =
|
|
57
|
-
if (Math.abs(
|
|
58
|
-
|
|
56
|
+
n = t + r[a];
|
|
57
|
+
if (Math.abs(t) >= Math.abs(r[a])) {
|
|
58
|
+
e += t - n + r[a];
|
|
59
59
|
} else {
|
|
60
|
-
|
|
60
|
+
e += r[a] - n + t;
|
|
61
61
|
}
|
|
62
|
-
|
|
62
|
+
t = n;
|
|
63
63
|
}
|
|
64
|
-
return
|
|
64
|
+
return t + e;
|
|
65
65
|
}
|
|
66
66
|
|
|
67
|
-
function
|
|
67
|
+
function n(r) {
|
|
68
68
|
if (r.length === 0) {
|
|
69
69
|
throw new Error("mean requires at least one data point");
|
|
70
70
|
}
|
|
71
|
-
return
|
|
71
|
+
return e(r) / r.length;
|
|
72
72
|
}
|
|
73
73
|
|
|
74
|
-
function
|
|
75
|
-
var
|
|
76
|
-
var
|
|
77
|
-
var
|
|
74
|
+
function a(r, t) {
|
|
75
|
+
var e = n(r);
|
|
76
|
+
var a = 0;
|
|
77
|
+
var o;
|
|
78
78
|
var i;
|
|
79
|
-
if (
|
|
79
|
+
if (t === 2) {
|
|
80
80
|
for (i = 0; i < r.length; i++) {
|
|
81
|
-
|
|
82
|
-
|
|
81
|
+
o = r[i] - e;
|
|
82
|
+
a += o * o;
|
|
83
83
|
}
|
|
84
84
|
} else {
|
|
85
85
|
for (i = 0; i < r.length; i++) {
|
|
86
|
-
|
|
86
|
+
a += Math.pow(r[i] - e, t);
|
|
87
87
|
}
|
|
88
88
|
}
|
|
89
|
-
return
|
|
89
|
+
return a;
|
|
90
90
|
}
|
|
91
91
|
|
|
92
|
-
function
|
|
92
|
+
function o(r) {
|
|
93
93
|
if (r.length === 0) {
|
|
94
94
|
throw new Error("variance requires at least one data point");
|
|
95
95
|
}
|
|
96
|
-
return
|
|
96
|
+
return a(r, 2) / r.length;
|
|
97
97
|
}
|
|
98
98
|
|
|
99
|
-
function
|
|
99
|
+
function i(r) {
|
|
100
100
|
if (r.length === 1) {
|
|
101
101
|
return 0;
|
|
102
102
|
}
|
|
103
|
-
var
|
|
104
|
-
return Math.sqrt(
|
|
103
|
+
var t = o(r);
|
|
104
|
+
return Math.sqrt(t);
|
|
105
105
|
}
|
|
106
106
|
|
|
107
|
-
function
|
|
107
|
+
function u(r, t) {
|
|
108
108
|
if (r.length < 2) {
|
|
109
109
|
return 1;
|
|
110
110
|
}
|
|
111
|
-
var
|
|
111
|
+
var e = 0;
|
|
112
112
|
for (var n = 0; n < r.length; n++) {
|
|
113
|
-
|
|
113
|
+
e += r[n][1];
|
|
114
114
|
}
|
|
115
|
-
var a =
|
|
116
|
-
var
|
|
117
|
-
for (var
|
|
118
|
-
|
|
115
|
+
var a = e / r.length;
|
|
116
|
+
var o = 0;
|
|
117
|
+
for (var i = 0; i < r.length; i++) {
|
|
118
|
+
o += Math.pow(a - r[i][1], 2);
|
|
119
119
|
}
|
|
120
120
|
var u = 0;
|
|
121
|
-
for (var
|
|
122
|
-
u += Math.pow(r[
|
|
121
|
+
for (var f = 0; f < r.length; f++) {
|
|
122
|
+
u += Math.pow(r[f][1] - t(r[f][0]), 2);
|
|
123
123
|
}
|
|
124
|
-
return 1 - u /
|
|
124
|
+
return 1 - u / o;
|
|
125
125
|
}
|
|
126
126
|
|
|
127
|
-
function
|
|
127
|
+
function f(r) {
|
|
128
128
|
if (r.length === 0) {
|
|
129
129
|
throw new Error("mode requires at least one data point");
|
|
130
130
|
}
|
|
131
131
|
if (r.length === 1) {
|
|
132
132
|
return r[0];
|
|
133
133
|
}
|
|
134
|
-
var
|
|
135
|
-
var
|
|
134
|
+
var t = r[0];
|
|
135
|
+
var e = Number.NaN;
|
|
136
136
|
var n = 0;
|
|
137
137
|
var a = 1;
|
|
138
|
-
for (var
|
|
139
|
-
if (r[
|
|
138
|
+
for (var o = 1; o < r.length + 1; o++) {
|
|
139
|
+
if (r[o] !== t) {
|
|
140
140
|
if (a > n) {
|
|
141
141
|
n = a;
|
|
142
|
-
|
|
142
|
+
e = t;
|
|
143
143
|
}
|
|
144
144
|
a = 1;
|
|
145
|
-
|
|
145
|
+
t = r[o];
|
|
146
146
|
} else {
|
|
147
147
|
a++;
|
|
148
148
|
}
|
|
149
149
|
}
|
|
150
|
-
return
|
|
150
|
+
return e;
|
|
151
151
|
}
|
|
152
152
|
|
|
153
|
-
function
|
|
154
|
-
return r.slice().sort((function(r,
|
|
155
|
-
return r -
|
|
153
|
+
function v(r) {
|
|
154
|
+
return r.slice().sort((function(r, t) {
|
|
155
|
+
return r - t;
|
|
156
156
|
}));
|
|
157
157
|
}
|
|
158
158
|
|
|
159
|
-
function
|
|
160
|
-
return
|
|
159
|
+
function h(r) {
|
|
160
|
+
return f(v(r));
|
|
161
161
|
}
|
|
162
162
|
|
|
163
|
-
function
|
|
164
|
-
var
|
|
165
|
-
var
|
|
163
|
+
function s(r) {
|
|
164
|
+
var t = new Map;
|
|
165
|
+
var e;
|
|
166
166
|
var n = 0;
|
|
167
167
|
for (var a = 0; a < r.length; a++) {
|
|
168
|
-
var
|
|
169
|
-
if (
|
|
170
|
-
|
|
168
|
+
var o = t.get(r[a]);
|
|
169
|
+
if (o === undefined) {
|
|
170
|
+
o = 1;
|
|
171
171
|
} else {
|
|
172
|
-
|
|
172
|
+
o++;
|
|
173
173
|
}
|
|
174
|
-
if (
|
|
175
|
-
|
|
176
|
-
n =
|
|
174
|
+
if (o > n) {
|
|
175
|
+
e = r[a];
|
|
176
|
+
n = o;
|
|
177
177
|
}
|
|
178
|
-
|
|
178
|
+
t.set(r[a], o);
|
|
179
179
|
}
|
|
180
180
|
if (n === 0) {
|
|
181
181
|
throw new Error("mode requires at last one data point");
|
|
182
182
|
}
|
|
183
|
-
return
|
|
183
|
+
return e;
|
|
184
184
|
}
|
|
185
185
|
|
|
186
|
-
function
|
|
186
|
+
function l(r) {
|
|
187
187
|
if (r.length === 0) {
|
|
188
188
|
throw new Error("min requires at least one data point");
|
|
189
189
|
}
|
|
190
|
-
var
|
|
191
|
-
for (var
|
|
192
|
-
if (r[
|
|
193
|
-
|
|
190
|
+
var t = r[0];
|
|
191
|
+
for (var e = 1; e < r.length; e++) {
|
|
192
|
+
if (r[e] < t) {
|
|
193
|
+
t = r[e];
|
|
194
194
|
}
|
|
195
195
|
}
|
|
196
|
-
return
|
|
196
|
+
return t;
|
|
197
197
|
}
|
|
198
198
|
|
|
199
|
-
function
|
|
199
|
+
function c(r) {
|
|
200
200
|
if (r.length === 0) {
|
|
201
201
|
throw new Error("max requires at least one data point");
|
|
202
202
|
}
|
|
203
|
-
var
|
|
204
|
-
for (var
|
|
205
|
-
if (r[
|
|
206
|
-
|
|
203
|
+
var t = r[0];
|
|
204
|
+
for (var e = 1; e < r.length; e++) {
|
|
205
|
+
if (r[e] > t) {
|
|
206
|
+
t = r[e];
|
|
207
207
|
}
|
|
208
208
|
}
|
|
209
|
-
return
|
|
209
|
+
return t;
|
|
210
210
|
}
|
|
211
211
|
|
|
212
|
-
function
|
|
212
|
+
function p(r) {
|
|
213
213
|
if (r.length === 0) {
|
|
214
214
|
throw new Error("extent requires at least one data point");
|
|
215
215
|
}
|
|
216
|
-
var e = r[0];
|
|
217
216
|
var t = r[0];
|
|
217
|
+
var e = r[0];
|
|
218
218
|
for (var n = 1; n < r.length; n++) {
|
|
219
|
-
if (r[n] >
|
|
220
|
-
t = r[n];
|
|
221
|
-
}
|
|
222
|
-
if (r[n] < e) {
|
|
219
|
+
if (r[n] > e) {
|
|
223
220
|
e = r[n];
|
|
224
221
|
}
|
|
222
|
+
if (r[n] < t) {
|
|
223
|
+
t = r[n];
|
|
224
|
+
}
|
|
225
225
|
}
|
|
226
|
-
return [
|
|
226
|
+
return [ t, e ];
|
|
227
227
|
}
|
|
228
228
|
|
|
229
|
-
function
|
|
229
|
+
function g(r) {
|
|
230
230
|
return r[0];
|
|
231
231
|
}
|
|
232
232
|
|
|
233
|
-
function
|
|
233
|
+
function w(r) {
|
|
234
234
|
return r[r.length - 1];
|
|
235
235
|
}
|
|
236
236
|
|
|
237
|
-
function
|
|
237
|
+
function M(r) {
|
|
238
238
|
return [ r[0], r[r.length - 1] ];
|
|
239
239
|
}
|
|
240
240
|
|
|
241
|
-
function
|
|
242
|
-
var
|
|
243
|
-
for (var
|
|
244
|
-
if (typeof r[
|
|
241
|
+
function m(r) {
|
|
242
|
+
var t = 0;
|
|
243
|
+
for (var e = 0; e < r.length; e++) {
|
|
244
|
+
if (typeof r[e] !== "number") {
|
|
245
245
|
return Number.NaN;
|
|
246
246
|
}
|
|
247
|
-
|
|
247
|
+
t += r[e];
|
|
248
248
|
}
|
|
249
|
-
return
|
|
249
|
+
return t;
|
|
250
250
|
}
|
|
251
251
|
|
|
252
|
-
function
|
|
253
|
-
var
|
|
254
|
-
for (var
|
|
255
|
-
|
|
252
|
+
function d(r) {
|
|
253
|
+
var t = 1;
|
|
254
|
+
for (var e = 0; e < r.length; e++) {
|
|
255
|
+
t *= r[e];
|
|
256
256
|
}
|
|
257
|
-
return
|
|
257
|
+
return t;
|
|
258
258
|
}
|
|
259
259
|
|
|
260
|
-
function
|
|
261
|
-
var
|
|
260
|
+
function b(r, t) {
|
|
261
|
+
var e = r.length * t;
|
|
262
262
|
if (r.length === 0) {
|
|
263
263
|
throw new Error("quantile requires at least one data point.");
|
|
264
|
-
} else if (
|
|
264
|
+
} else if (t < 0 || t > 1) {
|
|
265
265
|
throw new Error("quantiles must be between 0 and 1");
|
|
266
|
-
} else if (
|
|
266
|
+
} else if (t === 1) {
|
|
267
267
|
return r[r.length - 1];
|
|
268
|
-
} else if (
|
|
268
|
+
} else if (t === 0) {
|
|
269
269
|
return r[0];
|
|
270
|
-
} else if (
|
|
271
|
-
return r[Math.ceil(
|
|
270
|
+
} else if (e % 1 !== 0) {
|
|
271
|
+
return r[Math.ceil(e) - 1];
|
|
272
272
|
} else if (r.length % 2 === 0) {
|
|
273
|
-
return (r[
|
|
273
|
+
return (r[e - 1] + r[e]) / 2;
|
|
274
274
|
} else {
|
|
275
|
-
return r[
|
|
275
|
+
return r[e];
|
|
276
276
|
}
|
|
277
277
|
}
|
|
278
278
|
|
|
279
|
-
function
|
|
280
|
-
|
|
279
|
+
function x(r, t, e, n) {
|
|
280
|
+
e = e || 0;
|
|
281
281
|
n = n || r.length - 1;
|
|
282
|
-
while (n >
|
|
283
|
-
if (n -
|
|
284
|
-
var a = n -
|
|
285
|
-
var
|
|
286
|
-
var
|
|
287
|
-
var u = .5 * Math.exp(2 *
|
|
288
|
-
var
|
|
289
|
-
if (
|
|
290
|
-
|
|
282
|
+
while (n > e) {
|
|
283
|
+
if (n - e > 600) {
|
|
284
|
+
var a = n - e + 1;
|
|
285
|
+
var o = t - e + 1;
|
|
286
|
+
var i = Math.log(a);
|
|
287
|
+
var u = .5 * Math.exp(2 * i / 3);
|
|
288
|
+
var f = .5 * Math.sqrt(i * u * (a - u) / a);
|
|
289
|
+
if (o - a / 2 < 0) {
|
|
290
|
+
f *= -1;
|
|
291
291
|
}
|
|
292
|
-
var
|
|
293
|
-
var
|
|
294
|
-
|
|
292
|
+
var v = Math.max(e, Math.floor(t - o * u / a + f));
|
|
293
|
+
var h = Math.min(n, Math.floor(t + (a - o) * u / a + f));
|
|
294
|
+
x(r, t, v, h);
|
|
295
295
|
}
|
|
296
|
-
var
|
|
297
|
-
var
|
|
296
|
+
var s = r[t];
|
|
297
|
+
var l = e;
|
|
298
298
|
var c = n;
|
|
299
|
-
|
|
300
|
-
if (r[n] >
|
|
301
|
-
|
|
299
|
+
q(r, e, t);
|
|
300
|
+
if (r[n] > s) {
|
|
301
|
+
q(r, e, n);
|
|
302
302
|
}
|
|
303
|
-
while (
|
|
304
|
-
|
|
305
|
-
|
|
303
|
+
while (l < c) {
|
|
304
|
+
q(r, l, c);
|
|
305
|
+
l++;
|
|
306
306
|
c--;
|
|
307
|
-
while (r[
|
|
308
|
-
|
|
307
|
+
while (r[l] < s) {
|
|
308
|
+
l++;
|
|
309
309
|
}
|
|
310
|
-
while (r[c] >
|
|
310
|
+
while (r[c] > s) {
|
|
311
311
|
c--;
|
|
312
312
|
}
|
|
313
313
|
}
|
|
314
|
-
if (r[
|
|
315
|
-
|
|
314
|
+
if (r[e] === s) {
|
|
315
|
+
q(r, e, c);
|
|
316
316
|
} else {
|
|
317
317
|
c++;
|
|
318
|
-
|
|
318
|
+
q(r, c, n);
|
|
319
319
|
}
|
|
320
|
-
if (c <=
|
|
321
|
-
|
|
320
|
+
if (c <= t) {
|
|
321
|
+
e = c + 1;
|
|
322
322
|
}
|
|
323
|
-
if (
|
|
323
|
+
if (t <= c) {
|
|
324
324
|
n = c - 1;
|
|
325
325
|
}
|
|
326
326
|
}
|
|
327
327
|
}
|
|
328
328
|
|
|
329
|
-
function
|
|
330
|
-
var n = r[
|
|
331
|
-
r[
|
|
332
|
-
r[
|
|
329
|
+
function q(r, t, e) {
|
|
330
|
+
var n = r[t];
|
|
331
|
+
r[t] = r[e];
|
|
332
|
+
r[e] = n;
|
|
333
333
|
}
|
|
334
334
|
|
|
335
|
-
function
|
|
336
|
-
var
|
|
337
|
-
if (Array.isArray(
|
|
338
|
-
|
|
335
|
+
function E(r, t) {
|
|
336
|
+
var e = r.slice();
|
|
337
|
+
if (Array.isArray(t)) {
|
|
338
|
+
N(e, t);
|
|
339
339
|
var n = [];
|
|
340
|
-
for (var a = 0; a <
|
|
341
|
-
n[a] =
|
|
340
|
+
for (var a = 0; a < t.length; a++) {
|
|
341
|
+
n[a] = b(e, t[a]);
|
|
342
342
|
}
|
|
343
343
|
return n;
|
|
344
344
|
} else {
|
|
345
|
-
var
|
|
346
|
-
|
|
347
|
-
return
|
|
345
|
+
var o = k(e.length, t);
|
|
346
|
+
y(e, o, 0, e.length - 1);
|
|
347
|
+
return b(e, t);
|
|
348
348
|
}
|
|
349
349
|
}
|
|
350
350
|
|
|
351
|
-
function
|
|
352
|
-
if (
|
|
353
|
-
|
|
351
|
+
function y(r, t, e, n) {
|
|
352
|
+
if (t % 1 === 0) {
|
|
353
|
+
x(r, t, e, n);
|
|
354
354
|
} else {
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
355
|
+
t = Math.floor(t);
|
|
356
|
+
x(r, t, e, n);
|
|
357
|
+
x(r, t + 1, t + 1, n);
|
|
358
358
|
}
|
|
359
359
|
}
|
|
360
360
|
|
|
361
|
-
function
|
|
362
|
-
var
|
|
363
|
-
for (var n = 0; n <
|
|
364
|
-
|
|
361
|
+
function N(r, t) {
|
|
362
|
+
var e = [ 0 ];
|
|
363
|
+
for (var n = 0; n < t.length; n++) {
|
|
364
|
+
e.push(k(r.length, t[n]));
|
|
365
365
|
}
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
var a = [ 0,
|
|
366
|
+
e.push(r.length - 1);
|
|
367
|
+
e.sort(I);
|
|
368
|
+
var a = [ 0, e.length - 1 ];
|
|
369
369
|
while (a.length) {
|
|
370
|
-
var
|
|
371
|
-
var
|
|
372
|
-
if (
|
|
370
|
+
var o = Math.ceil(a.pop());
|
|
371
|
+
var i = Math.floor(a.pop());
|
|
372
|
+
if (o - i <= 1) {
|
|
373
373
|
continue;
|
|
374
374
|
}
|
|
375
|
-
var u = Math.floor((
|
|
376
|
-
|
|
377
|
-
a.push(
|
|
375
|
+
var u = Math.floor((i + o) / 2);
|
|
376
|
+
y(r, e[u], Math.floor(e[i]), Math.ceil(e[o]));
|
|
377
|
+
a.push(i, u, u, o);
|
|
378
378
|
}
|
|
379
379
|
}
|
|
380
380
|
|
|
381
|
-
function
|
|
382
|
-
return r -
|
|
381
|
+
function I(r, t) {
|
|
382
|
+
return r - t;
|
|
383
383
|
}
|
|
384
384
|
|
|
385
|
-
function
|
|
386
|
-
var
|
|
387
|
-
if (
|
|
385
|
+
function k(r, t) {
|
|
386
|
+
var e = r * t;
|
|
387
|
+
if (t === 1) {
|
|
388
388
|
return r - 1;
|
|
389
|
-
} else if (
|
|
389
|
+
} else if (t === 0) {
|
|
390
390
|
return 0;
|
|
391
|
-
} else if (
|
|
392
|
-
return Math.ceil(
|
|
391
|
+
} else if (e % 1 !== 0) {
|
|
392
|
+
return Math.ceil(e) - 1;
|
|
393
393
|
} else if (r % 2 === 0) {
|
|
394
|
-
return
|
|
394
|
+
return e - .5;
|
|
395
395
|
} else {
|
|
396
|
-
return
|
|
396
|
+
return e;
|
|
397
397
|
}
|
|
398
398
|
}
|
|
399
399
|
|
|
400
|
-
function
|
|
401
|
-
if (
|
|
400
|
+
function A(r, t) {
|
|
401
|
+
if (t < r[0]) {
|
|
402
402
|
return 0;
|
|
403
403
|
}
|
|
404
|
-
if (
|
|
404
|
+
if (t > r[r.length - 1]) {
|
|
405
405
|
return 1;
|
|
406
406
|
}
|
|
407
|
-
var
|
|
408
|
-
if (r[
|
|
409
|
-
return
|
|
407
|
+
var e = P(r, t);
|
|
408
|
+
if (r[e] !== t) {
|
|
409
|
+
return e / r.length;
|
|
410
410
|
}
|
|
411
|
-
|
|
412
|
-
var n =
|
|
413
|
-
if (n ===
|
|
414
|
-
return
|
|
411
|
+
e++;
|
|
412
|
+
var n = S(r, t);
|
|
413
|
+
if (n === e) {
|
|
414
|
+
return e / r.length;
|
|
415
415
|
}
|
|
416
|
-
var a = n -
|
|
417
|
-
var
|
|
418
|
-
var
|
|
419
|
-
return
|
|
416
|
+
var a = n - e + 1;
|
|
417
|
+
var o = a * (n + e) / 2;
|
|
418
|
+
var i = o / a;
|
|
419
|
+
return i / r.length;
|
|
420
420
|
}
|
|
421
421
|
|
|
422
|
-
function
|
|
423
|
-
var
|
|
422
|
+
function P(r, t) {
|
|
423
|
+
var e = 0;
|
|
424
424
|
var n = 0;
|
|
425
425
|
var a = r.length;
|
|
426
426
|
while (n < a) {
|
|
427
|
-
|
|
428
|
-
if (
|
|
429
|
-
a =
|
|
427
|
+
e = n + a >>> 1;
|
|
428
|
+
if (t <= r[e]) {
|
|
429
|
+
a = e;
|
|
430
430
|
} else {
|
|
431
|
-
n = -~
|
|
431
|
+
n = -~e;
|
|
432
432
|
}
|
|
433
433
|
}
|
|
434
434
|
return n;
|
|
435
435
|
}
|
|
436
436
|
|
|
437
|
-
function
|
|
438
|
-
var
|
|
437
|
+
function S(r, t) {
|
|
438
|
+
var e = 0;
|
|
439
439
|
var n = 0;
|
|
440
440
|
var a = r.length;
|
|
441
441
|
while (n < a) {
|
|
442
|
-
|
|
443
|
-
if (
|
|
444
|
-
n = -~
|
|
442
|
+
e = n + a >>> 1;
|
|
443
|
+
if (t >= r[e]) {
|
|
444
|
+
n = -~e;
|
|
445
445
|
} else {
|
|
446
|
-
a =
|
|
446
|
+
a = e;
|
|
447
447
|
}
|
|
448
448
|
}
|
|
449
449
|
return n;
|
|
450
450
|
}
|
|
451
451
|
|
|
452
|
-
function
|
|
453
|
-
var
|
|
454
|
-
return
|
|
452
|
+
function C(r, t) {
|
|
453
|
+
var e = v(r);
|
|
454
|
+
return A(e, t);
|
|
455
455
|
}
|
|
456
456
|
|
|
457
|
-
function
|
|
458
|
-
var
|
|
459
|
-
var
|
|
460
|
-
if (typeof
|
|
461
|
-
return
|
|
457
|
+
function _(r) {
|
|
458
|
+
var t = E(r, .75);
|
|
459
|
+
var e = E(r, .25);
|
|
460
|
+
if (typeof t === "number" && typeof e === "number") {
|
|
461
|
+
return t - e;
|
|
462
462
|
}
|
|
463
463
|
}
|
|
464
464
|
|
|
465
|
-
function
|
|
466
|
-
return +
|
|
465
|
+
function T(r) {
|
|
466
|
+
return +E(r, .5);
|
|
467
467
|
}
|
|
468
468
|
|
|
469
|
-
function
|
|
470
|
-
var
|
|
471
|
-
var
|
|
469
|
+
function V(r) {
|
|
470
|
+
var t = T(r);
|
|
471
|
+
var e = [];
|
|
472
472
|
for (var n = 0; n < r.length; n++) {
|
|
473
|
-
|
|
473
|
+
e.push(Math.abs(r[n] - t));
|
|
474
474
|
}
|
|
475
|
-
return
|
|
475
|
+
return T(e);
|
|
476
476
|
}
|
|
477
477
|
|
|
478
|
-
function
|
|
479
|
-
var
|
|
480
|
-
if (
|
|
478
|
+
function D(r, t) {
|
|
479
|
+
var e = [];
|
|
480
|
+
if (t < 1) {
|
|
481
481
|
throw new Error("chunk size must be a positive number");
|
|
482
482
|
}
|
|
483
|
-
if (Math.floor(
|
|
483
|
+
if (Math.floor(t) !== t) {
|
|
484
484
|
throw new Error("chunk size must be an integer");
|
|
485
485
|
}
|
|
486
|
-
for (var n = 0; n < r.length; n +=
|
|
487
|
-
|
|
486
|
+
for (var n = 0; n < r.length; n += t) {
|
|
487
|
+
e.push(r.slice(n, n + t));
|
|
488
488
|
}
|
|
489
|
-
return
|
|
489
|
+
return e;
|
|
490
490
|
}
|
|
491
491
|
|
|
492
|
-
function
|
|
492
|
+
function L(r, t, e) {
|
|
493
493
|
if (r.length === 0) {
|
|
494
494
|
return [];
|
|
495
495
|
}
|
|
496
|
-
|
|
496
|
+
e = e || Math.random;
|
|
497
497
|
var n = r.length;
|
|
498
498
|
var a = [];
|
|
499
|
-
for (var
|
|
500
|
-
var
|
|
501
|
-
a.push(r[
|
|
499
|
+
for (var o = 0; o < t; o++) {
|
|
500
|
+
var i = Math.floor(e() * n);
|
|
501
|
+
a.push(r[i]);
|
|
502
502
|
}
|
|
503
503
|
return a;
|
|
504
504
|
}
|
|
505
505
|
|
|
506
|
-
function
|
|
507
|
-
|
|
508
|
-
var
|
|
506
|
+
function R(r, t) {
|
|
507
|
+
t = t || Math.random;
|
|
508
|
+
var e = r.length;
|
|
509
509
|
var n;
|
|
510
510
|
var a;
|
|
511
|
-
while (
|
|
512
|
-
a = Math.floor(
|
|
513
|
-
n = r[
|
|
514
|
-
r[
|
|
511
|
+
while (e > 0) {
|
|
512
|
+
a = Math.floor(t() * e--);
|
|
513
|
+
n = r[e];
|
|
514
|
+
r[e] = r[a];
|
|
515
515
|
r[a] = n;
|
|
516
516
|
}
|
|
517
517
|
return r;
|
|
518
518
|
}
|
|
519
519
|
|
|
520
|
-
function
|
|
521
|
-
var
|
|
522
|
-
return
|
|
520
|
+
function U(r, t) {
|
|
521
|
+
var e = r.slice();
|
|
522
|
+
return R(e, t);
|
|
523
523
|
}
|
|
524
524
|
|
|
525
|
-
function
|
|
526
|
-
var n =
|
|
527
|
-
return n.slice(0,
|
|
525
|
+
function z(r, t, e) {
|
|
526
|
+
var n = U(r, e);
|
|
527
|
+
return n.slice(0, t);
|
|
528
528
|
}
|
|
529
529
|
|
|
530
|
-
function
|
|
531
|
-
var
|
|
530
|
+
function F(r, t) {
|
|
531
|
+
var e = [];
|
|
532
532
|
for (var n = 0; n < r; n++) {
|
|
533
533
|
var a = [];
|
|
534
|
-
for (var
|
|
534
|
+
for (var o = 0; o < t; o++) {
|
|
535
535
|
a.push(0);
|
|
536
536
|
}
|
|
537
|
-
|
|
537
|
+
e.push(a);
|
|
538
538
|
}
|
|
539
|
-
return
|
|
539
|
+
return e;
|
|
540
540
|
}
|
|
541
541
|
|
|
542
|
-
function
|
|
543
|
-
var
|
|
544
|
-
var
|
|
542
|
+
function O(r) {
|
|
543
|
+
var t = 0;
|
|
544
|
+
var e;
|
|
545
545
|
for (var n = 0; n < r.length; n++) {
|
|
546
|
-
if (n === 0 || r[n] !==
|
|
547
|
-
|
|
548
|
-
|
|
546
|
+
if (n === 0 || r[n] !== e) {
|
|
547
|
+
e = r[n];
|
|
548
|
+
t++;
|
|
549
549
|
}
|
|
550
550
|
}
|
|
551
|
-
return
|
|
551
|
+
return t;
|
|
552
552
|
}
|
|
553
553
|
|
|
554
|
-
function
|
|
554
|
+
function X(r, t, e, n) {
|
|
555
555
|
var a;
|
|
556
556
|
if (r > 0) {
|
|
557
|
-
var
|
|
558
|
-
a = n[
|
|
557
|
+
var o = (e[t] - e[r - 1]) / (t - r + 1);
|
|
558
|
+
a = n[t] - n[r - 1] - (t - r + 1) * o * o;
|
|
559
559
|
} else {
|
|
560
|
-
a = n[
|
|
560
|
+
a = n[t] - e[t] * e[t] / (t + 1);
|
|
561
561
|
}
|
|
562
562
|
if (a < 0) {
|
|
563
563
|
return 0;
|
|
@@ -565,573 +565,573 @@ function ssq(r, e, t, n) {
|
|
|
565
565
|
return a;
|
|
566
566
|
}
|
|
567
567
|
|
|
568
|
-
function
|
|
569
|
-
if (r >
|
|
568
|
+
function Y(r, t, e, n, a, o, i) {
|
|
569
|
+
if (r > t) {
|
|
570
570
|
return;
|
|
571
571
|
}
|
|
572
|
-
var u = Math.floor((r +
|
|
573
|
-
n[
|
|
574
|
-
a[
|
|
575
|
-
var
|
|
576
|
-
if (r >
|
|
577
|
-
|
|
572
|
+
var u = Math.floor((r + t) / 2);
|
|
573
|
+
n[e][u] = n[e - 1][u - 1];
|
|
574
|
+
a[e][u] = u;
|
|
575
|
+
var f = e;
|
|
576
|
+
if (r > e) {
|
|
577
|
+
f = Math.max(f, a[e][r - 1] || 0);
|
|
578
578
|
}
|
|
579
|
-
|
|
580
|
-
var
|
|
581
|
-
if (
|
|
582
|
-
|
|
579
|
+
f = Math.max(f, a[e - 1][u] || 0);
|
|
580
|
+
var v = u - 1;
|
|
581
|
+
if (t < n[0].length - 1) {
|
|
582
|
+
v = Math.min(v, a[e][t + 1] || 0);
|
|
583
583
|
}
|
|
584
|
-
var f;
|
|
585
|
-
var v;
|
|
586
584
|
var h;
|
|
585
|
+
var s;
|
|
586
|
+
var l;
|
|
587
587
|
var c;
|
|
588
|
-
for (var p =
|
|
589
|
-
|
|
590
|
-
if (
|
|
588
|
+
for (var p = v; p >= f; --p) {
|
|
589
|
+
h = X(p, u, o, i);
|
|
590
|
+
if (h + n[e - 1][f - 1] >= n[e][u]) {
|
|
591
591
|
break;
|
|
592
592
|
}
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
if (
|
|
596
|
-
n[
|
|
597
|
-
a[
|
|
593
|
+
s = X(f, u, o, i);
|
|
594
|
+
l = s + n[e - 1][f - 1];
|
|
595
|
+
if (l < n[e][u]) {
|
|
596
|
+
n[e][u] = l;
|
|
597
|
+
a[e][u] = f;
|
|
598
598
|
}
|
|
599
|
-
|
|
600
|
-
c =
|
|
601
|
-
if (c < n[
|
|
602
|
-
n[
|
|
603
|
-
a[
|
|
599
|
+
f++;
|
|
600
|
+
c = h + n[e - 1][p - 1];
|
|
601
|
+
if (c < n[e][u]) {
|
|
602
|
+
n[e][u] = c;
|
|
603
|
+
a[e][u] = p;
|
|
604
604
|
}
|
|
605
605
|
}
|
|
606
|
-
|
|
607
|
-
|
|
606
|
+
Y(r, u - 1, e, n, a, o, i);
|
|
607
|
+
Y(u + 1, t, e, n, a, o, i);
|
|
608
608
|
}
|
|
609
609
|
|
|
610
|
-
function
|
|
611
|
-
var n =
|
|
610
|
+
function j(r, t, e) {
|
|
611
|
+
var n = t[0].length;
|
|
612
612
|
var a = r[Math.floor(n / 2)];
|
|
613
|
-
var i = [];
|
|
614
613
|
var o = [];
|
|
615
|
-
|
|
616
|
-
|
|
614
|
+
var i = [];
|
|
615
|
+
for (var u = 0, f = void 0; u < n; ++u) {
|
|
616
|
+
f = r[u] - a;
|
|
617
617
|
if (u === 0) {
|
|
618
|
-
|
|
619
|
-
|
|
618
|
+
o.push(f);
|
|
619
|
+
i.push(f * f);
|
|
620
620
|
} else {
|
|
621
|
-
|
|
622
|
-
|
|
621
|
+
o.push(o[u - 1] + f);
|
|
622
|
+
i.push(i[u - 1] + f * f);
|
|
623
623
|
}
|
|
624
|
-
|
|
625
|
-
|
|
624
|
+
t[0][u] = X(0, u, o, i);
|
|
625
|
+
e[0][u] = 0;
|
|
626
626
|
}
|
|
627
|
-
var
|
|
628
|
-
for (var
|
|
629
|
-
if (
|
|
630
|
-
|
|
627
|
+
var v;
|
|
628
|
+
for (var h = 1; h < t.length; ++h) {
|
|
629
|
+
if (h < t.length - 1) {
|
|
630
|
+
v = h;
|
|
631
631
|
} else {
|
|
632
|
-
|
|
632
|
+
v = n - 1;
|
|
633
633
|
}
|
|
634
|
-
|
|
634
|
+
Y(v, n - 1, h, t, e, o, i);
|
|
635
635
|
}
|
|
636
636
|
}
|
|
637
637
|
|
|
638
|
-
function
|
|
639
|
-
if (
|
|
638
|
+
function K(r, t) {
|
|
639
|
+
if (t > r.length) {
|
|
640
640
|
throw new Error("cannot generate more classes than there are data values");
|
|
641
641
|
}
|
|
642
|
-
var
|
|
643
|
-
var n =
|
|
642
|
+
var e = v(r);
|
|
643
|
+
var n = O(e);
|
|
644
644
|
if (n === 1) {
|
|
645
|
-
return [
|
|
645
|
+
return [ e ];
|
|
646
646
|
}
|
|
647
|
-
var a =
|
|
648
|
-
var
|
|
649
|
-
|
|
650
|
-
var
|
|
651
|
-
var u =
|
|
652
|
-
for (var
|
|
653
|
-
var
|
|
654
|
-
|
|
655
|
-
if (
|
|
656
|
-
u =
|
|
647
|
+
var a = F(t, e.length);
|
|
648
|
+
var o = F(t, e.length);
|
|
649
|
+
j(e, a, o);
|
|
650
|
+
var i = [];
|
|
651
|
+
var u = o[0].length - 1;
|
|
652
|
+
for (var f = o.length - 1; f >= 0; f--) {
|
|
653
|
+
var h = o[f][u];
|
|
654
|
+
i[f] = e.slice(h, u + 1);
|
|
655
|
+
if (f > 0) {
|
|
656
|
+
u = h - 1;
|
|
657
657
|
}
|
|
658
658
|
}
|
|
659
|
-
return
|
|
659
|
+
return i;
|
|
660
660
|
}
|
|
661
661
|
|
|
662
|
-
function
|
|
662
|
+
function W(r, t, e) {
|
|
663
663
|
var n = r.length;
|
|
664
664
|
var a = [];
|
|
665
|
-
var
|
|
666
|
-
a[
|
|
667
|
-
while (
|
|
668
|
-
a[
|
|
669
|
-
n =
|
|
670
|
-
|
|
665
|
+
var o = e;
|
|
666
|
+
a[e] = r[r.length - 1];
|
|
667
|
+
while (o > 0) {
|
|
668
|
+
a[o - 1] = r[t[n][o] - 1];
|
|
669
|
+
n = t[n][o] - 1;
|
|
670
|
+
o--;
|
|
671
671
|
}
|
|
672
672
|
return a;
|
|
673
673
|
}
|
|
674
674
|
|
|
675
|
-
function
|
|
676
|
-
var
|
|
675
|
+
function B(r, t) {
|
|
676
|
+
var e = [];
|
|
677
677
|
var n = [];
|
|
678
678
|
var a;
|
|
679
|
-
var
|
|
680
|
-
var
|
|
679
|
+
var o;
|
|
680
|
+
var i = 0;
|
|
681
681
|
for (a = 0; a < r.length + 1; a++) {
|
|
682
682
|
var u = [];
|
|
683
|
-
var
|
|
684
|
-
for (
|
|
683
|
+
var f = [];
|
|
684
|
+
for (o = 0; o < t + 1; o++) {
|
|
685
685
|
u.push(0);
|
|
686
|
-
|
|
686
|
+
f.push(0);
|
|
687
687
|
}
|
|
688
|
-
|
|
689
|
-
n.push(
|
|
688
|
+
e.push(u);
|
|
689
|
+
n.push(f);
|
|
690
690
|
}
|
|
691
|
-
for (a = 1; a <
|
|
692
|
-
|
|
691
|
+
for (a = 1; a < t + 1; a++) {
|
|
692
|
+
e[1][a] = 1;
|
|
693
693
|
n[1][a] = 0;
|
|
694
|
-
for (
|
|
695
|
-
n[
|
|
694
|
+
for (o = 2; o < r.length + 1; o++) {
|
|
695
|
+
n[o][a] = Number.POSITIVE_INFINITY;
|
|
696
696
|
}
|
|
697
697
|
}
|
|
698
|
-
for (var
|
|
699
|
-
var f = 0;
|
|
700
|
-
var v = 0;
|
|
698
|
+
for (var v = 2; v < r.length + 1; v++) {
|
|
701
699
|
var h = 0;
|
|
700
|
+
var s = 0;
|
|
701
|
+
var l = 0;
|
|
702
702
|
var c = 0;
|
|
703
|
-
for (var p = 1; p <
|
|
704
|
-
var
|
|
705
|
-
var
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
c =
|
|
703
|
+
for (var p = 1; p < v + 1; p++) {
|
|
704
|
+
var g = v - p + 1;
|
|
705
|
+
var w = r[g - 1];
|
|
706
|
+
l++;
|
|
707
|
+
h += w;
|
|
708
|
+
s += w * w;
|
|
709
|
+
i = s - h * h / l;
|
|
710
|
+
c = g - 1;
|
|
711
711
|
if (c !== 0) {
|
|
712
|
-
for (
|
|
713
|
-
if (n[
|
|
714
|
-
|
|
715
|
-
n[
|
|
712
|
+
for (o = 2; o < t + 1; o++) {
|
|
713
|
+
if (n[v][o] >= i + n[c][o - 1]) {
|
|
714
|
+
e[v][o] = g;
|
|
715
|
+
n[v][o] = i + n[c][o - 1];
|
|
716
716
|
}
|
|
717
717
|
}
|
|
718
718
|
}
|
|
719
719
|
}
|
|
720
|
-
|
|
721
|
-
n[
|
|
720
|
+
e[v][1] = 1;
|
|
721
|
+
n[v][1] = i;
|
|
722
722
|
}
|
|
723
723
|
return {
|
|
724
|
-
lowerClassLimits:
|
|
724
|
+
lowerClassLimits: e,
|
|
725
725
|
varianceCombinations: n
|
|
726
726
|
};
|
|
727
727
|
}
|
|
728
728
|
|
|
729
|
-
function
|
|
730
|
-
if (
|
|
729
|
+
function G(r, t) {
|
|
730
|
+
if (t > r.length) {
|
|
731
731
|
return null;
|
|
732
732
|
}
|
|
733
|
-
r = r.slice().sort((function(r,
|
|
734
|
-
return r -
|
|
733
|
+
r = r.slice().sort((function(r, t) {
|
|
734
|
+
return r - t;
|
|
735
735
|
}));
|
|
736
|
-
var
|
|
737
|
-
var n =
|
|
738
|
-
return
|
|
736
|
+
var e = B(r, t);
|
|
737
|
+
var n = e.lowerClassLimits;
|
|
738
|
+
return W(r, n, t);
|
|
739
739
|
}
|
|
740
740
|
|
|
741
|
-
function
|
|
741
|
+
function H(r, t) {
|
|
742
742
|
if (r.length < 2) {
|
|
743
743
|
return r;
|
|
744
744
|
}
|
|
745
|
-
var
|
|
746
|
-
var n =
|
|
747
|
-
var a = [
|
|
748
|
-
var
|
|
749
|
-
for (var
|
|
750
|
-
a.push(a[0] +
|
|
745
|
+
var e = l(r);
|
|
746
|
+
var n = c(r);
|
|
747
|
+
var a = [ e ];
|
|
748
|
+
var o = (n - e) / t;
|
|
749
|
+
for (var i = 1; i < t; i++) {
|
|
750
|
+
a.push(a[0] + o * i);
|
|
751
751
|
}
|
|
752
752
|
a.push(n);
|
|
753
753
|
return a;
|
|
754
754
|
}
|
|
755
755
|
|
|
756
|
-
function
|
|
757
|
-
if (r.length !==
|
|
756
|
+
function J(r, t) {
|
|
757
|
+
if (r.length !== t.length) {
|
|
758
758
|
throw new Error("sampleCovariance requires samples with equal lengths");
|
|
759
759
|
}
|
|
760
760
|
if (r.length < 2) {
|
|
761
761
|
throw new Error("sampleCovariance requires at least two data points in each sample");
|
|
762
762
|
}
|
|
763
|
-
var
|
|
764
|
-
var
|
|
765
|
-
var
|
|
763
|
+
var e = n(r);
|
|
764
|
+
var a = n(t);
|
|
765
|
+
var o = 0;
|
|
766
766
|
for (var i = 0; i < r.length; i++) {
|
|
767
|
-
|
|
767
|
+
o += (r[i] - e) * (t[i] - a);
|
|
768
768
|
}
|
|
769
|
-
var
|
|
770
|
-
return
|
|
769
|
+
var u = r.length - 1;
|
|
770
|
+
return o / u;
|
|
771
771
|
}
|
|
772
772
|
|
|
773
|
-
function
|
|
773
|
+
function Q(r) {
|
|
774
774
|
if (r.length < 2) {
|
|
775
775
|
throw new Error("sampleVariance requires at least two data points");
|
|
776
776
|
}
|
|
777
|
-
var
|
|
778
|
-
var
|
|
779
|
-
return
|
|
777
|
+
var t = a(r, 2);
|
|
778
|
+
var e = r.length - 1;
|
|
779
|
+
return t / e;
|
|
780
780
|
}
|
|
781
781
|
|
|
782
|
-
function
|
|
783
|
-
var
|
|
784
|
-
return Math.sqrt(
|
|
782
|
+
function Z(r) {
|
|
783
|
+
var t = Q(r);
|
|
784
|
+
return Math.sqrt(t);
|
|
785
785
|
}
|
|
786
786
|
|
|
787
|
-
function
|
|
788
|
-
var
|
|
789
|
-
var n =
|
|
790
|
-
var a =
|
|
791
|
-
return
|
|
787
|
+
function $(r, t) {
|
|
788
|
+
var e = J(r, t);
|
|
789
|
+
var n = Z(r);
|
|
790
|
+
var a = Z(t);
|
|
791
|
+
return e / n / a;
|
|
792
792
|
}
|
|
793
793
|
|
|
794
|
-
function
|
|
795
|
-
var
|
|
796
|
-
return [ r,
|
|
797
|
-
})).sort((function(r,
|
|
798
|
-
return r[0] -
|
|
794
|
+
function rr(r, t) {
|
|
795
|
+
var e = r.map((function(r, t) {
|
|
796
|
+
return [ r, t ];
|
|
797
|
+
})).sort((function(r, t) {
|
|
798
|
+
return r[0] - t[0];
|
|
799
799
|
})).map((function(r) {
|
|
800
800
|
return r[1];
|
|
801
801
|
}));
|
|
802
|
-
var n =
|
|
803
|
-
return [ r,
|
|
804
|
-
})).sort((function(r,
|
|
805
|
-
return r[0] -
|
|
802
|
+
var n = t.map((function(r, t) {
|
|
803
|
+
return [ r, t ];
|
|
804
|
+
})).sort((function(r, t) {
|
|
805
|
+
return r[0] - t[0];
|
|
806
806
|
})).map((function(r) {
|
|
807
807
|
return r[1];
|
|
808
808
|
}));
|
|
809
|
-
var a = Array(
|
|
810
|
-
var
|
|
811
|
-
for (var
|
|
812
|
-
a[
|
|
813
|
-
|
|
809
|
+
var a = Array(e.length);
|
|
810
|
+
var o = Array(e.length);
|
|
811
|
+
for (var i = 0; i < e.length; i++) {
|
|
812
|
+
a[e[i]] = i;
|
|
813
|
+
o[n[i]] = i;
|
|
814
814
|
}
|
|
815
|
-
return
|
|
815
|
+
return $(a, o);
|
|
816
816
|
}
|
|
817
817
|
|
|
818
|
-
function
|
|
818
|
+
function tr(r) {
|
|
819
819
|
if (r.length < 3) {
|
|
820
820
|
throw new Error("sampleSkewness requires at least three data points");
|
|
821
821
|
}
|
|
822
|
-
var
|
|
823
|
-
var
|
|
824
|
-
var n = 0;
|
|
822
|
+
var t = n(r);
|
|
823
|
+
var e;
|
|
825
824
|
var a = 0;
|
|
825
|
+
var o = 0;
|
|
826
826
|
for (var i = 0; i < r.length; i++) {
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
827
|
+
e = r[i] - t;
|
|
828
|
+
a += e * e;
|
|
829
|
+
o += e * e * e;
|
|
830
830
|
}
|
|
831
|
-
var
|
|
832
|
-
var
|
|
833
|
-
var
|
|
834
|
-
var
|
|
835
|
-
return
|
|
831
|
+
var u = r.length - 1;
|
|
832
|
+
var f = Math.sqrt(a / u);
|
|
833
|
+
var v = r.length;
|
|
834
|
+
var h = Math.pow(f, 3);
|
|
835
|
+
return v * o / ((v - 1) * (v - 2) * h);
|
|
836
836
|
}
|
|
837
837
|
|
|
838
|
-
function
|
|
839
|
-
var
|
|
840
|
-
if (
|
|
838
|
+
function er(r) {
|
|
839
|
+
var t = r.length;
|
|
840
|
+
if (t < 4) {
|
|
841
841
|
throw new Error("sampleKurtosis requires at least four data points");
|
|
842
842
|
}
|
|
843
|
-
var
|
|
844
|
-
var
|
|
845
|
-
var
|
|
843
|
+
var e = n(r);
|
|
844
|
+
var a;
|
|
845
|
+
var o = 0;
|
|
846
846
|
var i = 0;
|
|
847
|
-
for (var
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
i +=
|
|
847
|
+
for (var u = 0; u < t; u++) {
|
|
848
|
+
a = r[u] - e;
|
|
849
|
+
o += a * a;
|
|
850
|
+
i += a * a * a * a;
|
|
851
851
|
}
|
|
852
|
-
return (
|
|
852
|
+
return (t - 1) / ((t - 2) * (t - 3)) * (t * (t + 1) * i / (o * o) - 3 * (t - 1));
|
|
853
853
|
}
|
|
854
854
|
|
|
855
|
-
function
|
|
856
|
-
var
|
|
857
|
-
var
|
|
855
|
+
function nr(r) {
|
|
856
|
+
var t = new Array(r.length);
|
|
857
|
+
var e = [ r.slice() ];
|
|
858
858
|
for (var n = 0; n < r.length; n++) {
|
|
859
|
-
|
|
859
|
+
t[n] = 0;
|
|
860
860
|
}
|
|
861
861
|
for (var a = 0; a < r.length; ) {
|
|
862
|
-
if (
|
|
863
|
-
var
|
|
862
|
+
if (t[a] < a) {
|
|
863
|
+
var o = 0;
|
|
864
864
|
if (a % 2 !== 0) {
|
|
865
|
-
|
|
865
|
+
o = t[a];
|
|
866
866
|
}
|
|
867
|
-
var
|
|
868
|
-
r[
|
|
869
|
-
r[a] =
|
|
870
|
-
|
|
871
|
-
|
|
867
|
+
var i = r[o];
|
|
868
|
+
r[o] = r[a];
|
|
869
|
+
r[a] = i;
|
|
870
|
+
e.push(r.slice());
|
|
871
|
+
t[a]++;
|
|
872
872
|
a = 0;
|
|
873
873
|
} else {
|
|
874
|
-
|
|
874
|
+
t[a] = 0;
|
|
875
875
|
a++;
|
|
876
876
|
}
|
|
877
877
|
}
|
|
878
|
-
return
|
|
878
|
+
return e;
|
|
879
879
|
}
|
|
880
880
|
|
|
881
|
-
function
|
|
882
|
-
var
|
|
881
|
+
function ar(r, t) {
|
|
882
|
+
var e;
|
|
883
883
|
var n;
|
|
884
884
|
var a = [];
|
|
885
|
-
var i;
|
|
886
885
|
var o;
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
886
|
+
var i;
|
|
887
|
+
for (e = 0; e < r.length; e++) {
|
|
888
|
+
if (t === 1) {
|
|
889
|
+
a.push([ r[e] ]);
|
|
890
890
|
} else {
|
|
891
|
-
|
|
892
|
-
for (n = 0; n <
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
a.push(
|
|
891
|
+
o = ar(r.slice(e + 1, r.length), t - 1);
|
|
892
|
+
for (n = 0; n < o.length; n++) {
|
|
893
|
+
i = o[n];
|
|
894
|
+
i.unshift(r[e]);
|
|
895
|
+
a.push(i);
|
|
896
896
|
}
|
|
897
897
|
}
|
|
898
898
|
}
|
|
899
899
|
return a;
|
|
900
900
|
}
|
|
901
901
|
|
|
902
|
-
function
|
|
903
|
-
var
|
|
902
|
+
function or(r, t) {
|
|
903
|
+
var e = [];
|
|
904
904
|
for (var n = 0; n < r.length; n++) {
|
|
905
|
-
if (
|
|
906
|
-
|
|
905
|
+
if (t === 1) {
|
|
906
|
+
e.push([ r[n] ]);
|
|
907
907
|
} else {
|
|
908
|
-
var a =
|
|
909
|
-
for (var
|
|
910
|
-
|
|
908
|
+
var a = or(r.slice(n, r.length), t - 1);
|
|
909
|
+
for (var o = 0; o < a.length; o++) {
|
|
910
|
+
e.push([ r[n] ].concat(a[o]));
|
|
911
911
|
}
|
|
912
912
|
}
|
|
913
913
|
}
|
|
914
|
-
return
|
|
914
|
+
return e;
|
|
915
915
|
}
|
|
916
916
|
|
|
917
|
-
function
|
|
918
|
-
return r + (
|
|
917
|
+
function ir(r, t, e) {
|
|
918
|
+
return r + (e - r) / (t + 1);
|
|
919
919
|
}
|
|
920
920
|
|
|
921
|
-
function
|
|
922
|
-
return (r *
|
|
921
|
+
function ur(r, t, e, n) {
|
|
922
|
+
return (r * t + e * n) / (t + n);
|
|
923
923
|
}
|
|
924
924
|
|
|
925
|
-
function
|
|
926
|
-
var
|
|
927
|
-
return (
|
|
925
|
+
function fr(r, t, e, n, a, o) {
|
|
926
|
+
var i = ur(t, e, a, o);
|
|
927
|
+
return (e * (r + Math.pow(t - i, 2)) + o * (n + Math.pow(a - i, 2))) / (e + o);
|
|
928
928
|
}
|
|
929
929
|
|
|
930
|
-
function
|
|
930
|
+
function vr(r) {
|
|
931
931
|
if (r.length === 0) {
|
|
932
932
|
throw new Error("geometricMean requires at least one data point");
|
|
933
933
|
}
|
|
934
|
-
var
|
|
935
|
-
for (var
|
|
936
|
-
if (r[
|
|
934
|
+
var t = 1;
|
|
935
|
+
for (var e = 0; e < r.length; e++) {
|
|
936
|
+
if (r[e] < 0) {
|
|
937
937
|
throw new Error("geometricMean requires only non-negative numbers as input");
|
|
938
938
|
}
|
|
939
|
-
|
|
939
|
+
t *= r[e];
|
|
940
940
|
}
|
|
941
|
-
return Math.pow(
|
|
941
|
+
return Math.pow(t, 1 / r.length);
|
|
942
942
|
}
|
|
943
943
|
|
|
944
|
-
function
|
|
944
|
+
function hr(r) {
|
|
945
945
|
if (r.length === 0) {
|
|
946
946
|
throw new Error("logAverage requires at least one data point");
|
|
947
947
|
}
|
|
948
|
-
var
|
|
949
|
-
for (var
|
|
950
|
-
if (r[
|
|
948
|
+
var t = 0;
|
|
949
|
+
for (var e = 0; e < r.length; e++) {
|
|
950
|
+
if (r[e] < 0) {
|
|
951
951
|
throw new Error("logAverage requires only non-negative numbers as input");
|
|
952
952
|
}
|
|
953
|
-
|
|
953
|
+
t += Math.log(r[e]);
|
|
954
954
|
}
|
|
955
|
-
return Math.exp(
|
|
955
|
+
return Math.exp(t / r.length);
|
|
956
956
|
}
|
|
957
957
|
|
|
958
|
-
function
|
|
958
|
+
function sr(r) {
|
|
959
959
|
if (r.length === 0) {
|
|
960
960
|
throw new Error("harmonicMean requires at least one data point");
|
|
961
961
|
}
|
|
962
|
-
var
|
|
963
|
-
for (var
|
|
964
|
-
if (r[
|
|
962
|
+
var t = 0;
|
|
963
|
+
for (var e = 0; e < r.length; e++) {
|
|
964
|
+
if (r[e] <= 0) {
|
|
965
965
|
throw new Error("harmonicMean requires only positive numbers as input");
|
|
966
966
|
}
|
|
967
|
-
|
|
967
|
+
t += 1 / r[e];
|
|
968
968
|
}
|
|
969
|
-
return r.length /
|
|
969
|
+
return r.length / t;
|
|
970
970
|
}
|
|
971
971
|
|
|
972
|
-
function
|
|
972
|
+
function lr(r) {
|
|
973
973
|
if (r.length === 0) {
|
|
974
974
|
throw new Error("meanSimple requires at least one data point");
|
|
975
975
|
}
|
|
976
|
-
return
|
|
976
|
+
return m(r) / r.length;
|
|
977
977
|
}
|
|
978
978
|
|
|
979
|
-
function
|
|
980
|
-
return
|
|
979
|
+
function cr(r) {
|
|
980
|
+
return b(r, .5);
|
|
981
981
|
}
|
|
982
982
|
|
|
983
|
-
function
|
|
984
|
-
return (r *
|
|
983
|
+
function pr(r, t, e) {
|
|
984
|
+
return (r * t - e) / (t - 1);
|
|
985
985
|
}
|
|
986
986
|
|
|
987
|
-
function
|
|
987
|
+
function gr(r) {
|
|
988
988
|
if (r.length === 0) {
|
|
989
989
|
throw new Error("rootMeanSquare requires at least one data point");
|
|
990
990
|
}
|
|
991
|
-
var
|
|
992
|
-
for (var
|
|
993
|
-
|
|
991
|
+
var t = 0;
|
|
992
|
+
for (var e = 0; e < r.length; e++) {
|
|
993
|
+
t += Math.pow(r[e], 2);
|
|
994
994
|
}
|
|
995
|
-
return Math.sqrt(
|
|
995
|
+
return Math.sqrt(t / r.length);
|
|
996
996
|
}
|
|
997
997
|
|
|
998
|
-
function
|
|
999
|
-
return
|
|
998
|
+
function wr(r) {
|
|
999
|
+
return Z(r) / n(r);
|
|
1000
1000
|
}
|
|
1001
1001
|
|
|
1002
|
-
function
|
|
1003
|
-
var
|
|
1004
|
-
var
|
|
1005
|
-
var
|
|
1006
|
-
return (
|
|
1002
|
+
function Mr(r, t) {
|
|
1003
|
+
var e = n(r);
|
|
1004
|
+
var a = i(r);
|
|
1005
|
+
var o = Math.sqrt(r.length);
|
|
1006
|
+
return (e - t) / (a / o);
|
|
1007
1007
|
}
|
|
1008
1008
|
|
|
1009
|
-
function
|
|
1010
|
-
var
|
|
1011
|
-
var
|
|
1012
|
-
if (!
|
|
1009
|
+
function mr(r, t, e) {
|
|
1010
|
+
var a = r.length;
|
|
1011
|
+
var o = t.length;
|
|
1012
|
+
if (!a || !o) {
|
|
1013
1013
|
return null;
|
|
1014
1014
|
}
|
|
1015
|
-
if (!
|
|
1016
|
-
|
|
1015
|
+
if (!e) {
|
|
1016
|
+
e = 0;
|
|
1017
1017
|
}
|
|
1018
|
-
var i =
|
|
1019
|
-
var
|
|
1020
|
-
var
|
|
1021
|
-
var
|
|
1022
|
-
if (typeof i === "number" && typeof
|
|
1023
|
-
var
|
|
1024
|
-
return (i -
|
|
1018
|
+
var i = n(r);
|
|
1019
|
+
var u = n(t);
|
|
1020
|
+
var f = Q(r);
|
|
1021
|
+
var v = Q(t);
|
|
1022
|
+
if (typeof i === "number" && typeof u === "number" && typeof f === "number" && typeof v === "number") {
|
|
1023
|
+
var h = ((a - 1) * f + (o - 1) * v) / (a + o - 2);
|
|
1024
|
+
return (i - u - e) / Math.sqrt(h * (1 / a + 1 / o));
|
|
1025
1025
|
}
|
|
1026
1026
|
}
|
|
1027
1027
|
|
|
1028
|
-
function
|
|
1029
|
-
if (!r.length || !
|
|
1028
|
+
function dr(r, t) {
|
|
1029
|
+
if (!r.length || !t.length) {
|
|
1030
1030
|
throw new Error("Neither sample can be empty");
|
|
1031
1031
|
}
|
|
1032
|
-
var
|
|
1032
|
+
var e = r.map((function(r) {
|
|
1033
1033
|
return {
|
|
1034
1034
|
label: "x",
|
|
1035
1035
|
value: r
|
|
1036
1036
|
};
|
|
1037
|
-
})).concat(
|
|
1037
|
+
})).concat(t.map((function(r) {
|
|
1038
1038
|
return {
|
|
1039
1039
|
label: "y",
|
|
1040
1040
|
value: r
|
|
1041
1041
|
};
|
|
1042
|
-
}))).sort((function(r,
|
|
1043
|
-
return r.value -
|
|
1042
|
+
}))).sort((function(r, t) {
|
|
1043
|
+
return r.value - t.value;
|
|
1044
1044
|
}));
|
|
1045
|
-
for (var n = 0; n <
|
|
1046
|
-
|
|
1047
|
-
}
|
|
1048
|
-
var a = [
|
|
1049
|
-
for (var
|
|
1050
|
-
if (
|
|
1051
|
-
a.push(
|
|
1052
|
-
if (
|
|
1053
|
-
|
|
1045
|
+
for (var n = 0; n < e.length; n++) {
|
|
1046
|
+
e[n].rank = n;
|
|
1047
|
+
}
|
|
1048
|
+
var a = [ e[0].rank ];
|
|
1049
|
+
for (var o = 1; o < e.length; o++) {
|
|
1050
|
+
if (e[o].value === e[o - 1].value) {
|
|
1051
|
+
a.push(e[o].rank);
|
|
1052
|
+
if (o === e.length - 1) {
|
|
1053
|
+
i(e, a);
|
|
1054
1054
|
}
|
|
1055
1055
|
} else if (a.length > 1) {
|
|
1056
|
-
|
|
1056
|
+
i(e, a);
|
|
1057
1057
|
} else {
|
|
1058
|
-
a = [
|
|
1058
|
+
a = [ e[o].rank ];
|
|
1059
1059
|
}
|
|
1060
1060
|
}
|
|
1061
|
-
function
|
|
1062
|
-
var
|
|
1063
|
-
for (var n = 0; n <
|
|
1064
|
-
r[
|
|
1061
|
+
function i(r, t) {
|
|
1062
|
+
var e = (t[0] + t[t.length - 1]) / 2;
|
|
1063
|
+
for (var n = 0; n < t.length; n++) {
|
|
1064
|
+
r[t[n]].rank = e;
|
|
1065
1065
|
}
|
|
1066
1066
|
}
|
|
1067
|
-
var
|
|
1068
|
-
for (var
|
|
1069
|
-
var
|
|
1070
|
-
if (
|
|
1071
|
-
|
|
1067
|
+
var u = 0;
|
|
1068
|
+
for (var f = 0; f < e.length; f++) {
|
|
1069
|
+
var v = e[f];
|
|
1070
|
+
if (v.label === "x") {
|
|
1071
|
+
u += v.rank + 1;
|
|
1072
1072
|
}
|
|
1073
1073
|
}
|
|
1074
|
-
return
|
|
1074
|
+
return u;
|
|
1075
1075
|
}
|
|
1076
1076
|
|
|
1077
|
-
var
|
|
1077
|
+
var br = function r() {
|
|
1078
1078
|
this.totalCount = 0;
|
|
1079
1079
|
this.data = {};
|
|
1080
1080
|
};
|
|
1081
1081
|
|
|
1082
|
-
|
|
1082
|
+
br.prototype.train = function r(t, e) {
|
|
1083
1083
|
if (!this.data[e]) {
|
|
1084
1084
|
this.data[e] = {};
|
|
1085
1085
|
}
|
|
1086
|
-
for (var
|
|
1087
|
-
var
|
|
1088
|
-
if (this.data[e][
|
|
1089
|
-
this.data[e][
|
|
1086
|
+
for (var n in t) {
|
|
1087
|
+
var a = t[n];
|
|
1088
|
+
if (this.data[e][n] === undefined) {
|
|
1089
|
+
this.data[e][n] = {};
|
|
1090
1090
|
}
|
|
1091
|
-
if (this.data[e][
|
|
1092
|
-
this.data[e][
|
|
1091
|
+
if (this.data[e][n][a] === undefined) {
|
|
1092
|
+
this.data[e][n][a] = 0;
|
|
1093
1093
|
}
|
|
1094
|
-
this.data[e][
|
|
1094
|
+
this.data[e][n][a]++;
|
|
1095
1095
|
}
|
|
1096
1096
|
this.totalCount++;
|
|
1097
1097
|
};
|
|
1098
1098
|
|
|
1099
|
-
|
|
1099
|
+
br.prototype.score = function r(t) {
|
|
1100
1100
|
var e = {};
|
|
1101
|
-
var
|
|
1102
|
-
for (var
|
|
1103
|
-
var
|
|
1104
|
-
for (
|
|
1105
|
-
e[
|
|
1106
|
-
if (this.data[
|
|
1107
|
-
e[
|
|
1101
|
+
var n;
|
|
1102
|
+
for (var a in t) {
|
|
1103
|
+
var o = t[a];
|
|
1104
|
+
for (n in this.data) {
|
|
1105
|
+
e[n] = {};
|
|
1106
|
+
if (this.data[n][a]) {
|
|
1107
|
+
e[n][a + "_" + o] = (this.data[n][a][o] || 0) / this.totalCount;
|
|
1108
1108
|
} else {
|
|
1109
|
-
e[
|
|
1109
|
+
e[n][a + "_" + o] = 0;
|
|
1110
1110
|
}
|
|
1111
1111
|
}
|
|
1112
1112
|
}
|
|
1113
1113
|
var i = {};
|
|
1114
|
-
for (
|
|
1115
|
-
i[
|
|
1116
|
-
for (var
|
|
1117
|
-
i[
|
|
1114
|
+
for (n in e) {
|
|
1115
|
+
i[n] = 0;
|
|
1116
|
+
for (var u in e[n]) {
|
|
1117
|
+
i[n] += e[n][u];
|
|
1118
1118
|
}
|
|
1119
1119
|
}
|
|
1120
1120
|
return i;
|
|
1121
1121
|
};
|
|
1122
1122
|
|
|
1123
|
-
var
|
|
1123
|
+
var xr = function r() {
|
|
1124
1124
|
this.weights = [];
|
|
1125
1125
|
this.bias = 0;
|
|
1126
1126
|
};
|
|
1127
1127
|
|
|
1128
|
-
|
|
1129
|
-
if (
|
|
1128
|
+
xr.prototype.predict = function r(t) {
|
|
1129
|
+
if (t.length !== this.weights.length) {
|
|
1130
1130
|
return null;
|
|
1131
1131
|
}
|
|
1132
1132
|
var e = 0;
|
|
1133
|
-
for (var
|
|
1134
|
-
e += this.weights[
|
|
1133
|
+
for (var n = 0; n < this.weights.length; n++) {
|
|
1134
|
+
e += this.weights[n] * t[n];
|
|
1135
1135
|
}
|
|
1136
1136
|
e += this.bias;
|
|
1137
1137
|
if (e > 0) {
|
|
@@ -1141,121 +1141,121 @@ e.prototype.predict = function predict(r) {
|
|
|
1141
1141
|
}
|
|
1142
1142
|
};
|
|
1143
1143
|
|
|
1144
|
-
|
|
1144
|
+
xr.prototype.train = function r(t, e) {
|
|
1145
1145
|
if (e !== 0 && e !== 1) {
|
|
1146
1146
|
return null;
|
|
1147
1147
|
}
|
|
1148
|
-
if (
|
|
1149
|
-
this.weights =
|
|
1148
|
+
if (t.length !== this.weights.length) {
|
|
1149
|
+
this.weights = t;
|
|
1150
1150
|
this.bias = 1;
|
|
1151
1151
|
}
|
|
1152
|
-
var
|
|
1153
|
-
if (typeof
|
|
1154
|
-
var
|
|
1155
|
-
for (var
|
|
1156
|
-
this.weights[
|
|
1152
|
+
var n = this.predict(t);
|
|
1153
|
+
if (typeof n === "number" && n !== e) {
|
|
1154
|
+
var a = e - n;
|
|
1155
|
+
for (var o = 0; o < this.weights.length; o++) {
|
|
1156
|
+
this.weights[o] += a * t[o];
|
|
1157
1157
|
}
|
|
1158
|
-
this.bias +=
|
|
1158
|
+
this.bias += a;
|
|
1159
1159
|
}
|
|
1160
1160
|
return this;
|
|
1161
1161
|
};
|
|
1162
1162
|
|
|
1163
|
-
var
|
|
1163
|
+
var qr = 1e-4;
|
|
1164
1164
|
|
|
1165
|
-
function
|
|
1165
|
+
function Er(r) {
|
|
1166
1166
|
if (r < 0) {
|
|
1167
1167
|
throw new Error("factorial requires a non-negative value");
|
|
1168
1168
|
}
|
|
1169
1169
|
if (Math.floor(r) !== r) {
|
|
1170
1170
|
throw new Error("factorial requires an integer input");
|
|
1171
1171
|
}
|
|
1172
|
-
var
|
|
1173
|
-
for (var
|
|
1174
|
-
|
|
1172
|
+
var t = 1;
|
|
1173
|
+
for (var e = 2; e <= r; e++) {
|
|
1174
|
+
t *= e;
|
|
1175
1175
|
}
|
|
1176
|
-
return
|
|
1176
|
+
return t;
|
|
1177
1177
|
}
|
|
1178
1178
|
|
|
1179
|
-
function
|
|
1179
|
+
function yr(r) {
|
|
1180
1180
|
if (Number.isInteger(r)) {
|
|
1181
1181
|
if (r <= 0) {
|
|
1182
1182
|
return Number.NaN;
|
|
1183
1183
|
} else {
|
|
1184
|
-
return
|
|
1184
|
+
return Er(r - 1);
|
|
1185
1185
|
}
|
|
1186
1186
|
}
|
|
1187
1187
|
r--;
|
|
1188
1188
|
if (r < 0) {
|
|
1189
|
-
return Math.PI / (Math.sin(Math.PI * -r) *
|
|
1189
|
+
return Math.PI / (Math.sin(Math.PI * -r) * yr(-r));
|
|
1190
1190
|
} else {
|
|
1191
|
-
var
|
|
1192
|
-
var
|
|
1193
|
-
var n = 1 + 1 / 144 / Math.pow(
|
|
1194
|
-
return
|
|
1191
|
+
var t = Math.pow(r / Math.E, r) * Math.sqrt(2 * Math.PI * (r + 1 / 6));
|
|
1192
|
+
var e = r + 1 / 4;
|
|
1193
|
+
var n = 1 + 1 / 144 / Math.pow(e, 2) - 1 / 12960 / Math.pow(e, 3) - 257 / 207360 / Math.pow(e, 4) - 52 / 2612736 / Math.pow(e, 5) + 5741173 / 9405849600 / Math.pow(e, 6) + 37529 / 18811699200 / Math.pow(e, 7);
|
|
1194
|
+
return t * n;
|
|
1195
1195
|
}
|
|
1196
1196
|
}
|
|
1197
1197
|
|
|
1198
|
-
var
|
|
1198
|
+
var Nr = [ .9999999999999971, 57.15623566586292, -59.59796035547549, 14.136097974741746, -.4919138160976202, 3399464998481189e-20, 4652362892704858e-20, -9837447530487956e-20, .0001580887032249125, -.00021026444172410488, .00021743961811521265, -.0001643181065367639, 8441822398385275e-20, -26190838401581408e-21, 36899182659531625e-22 ];
|
|
1199
1199
|
|
|
1200
|
-
var
|
|
1200
|
+
var Ir = 607 / 128;
|
|
1201
1201
|
|
|
1202
|
-
var
|
|
1202
|
+
var kr = Math.log(Math.sqrt(2 * Math.PI));
|
|
1203
1203
|
|
|
1204
|
-
function
|
|
1204
|
+
function Ar(r) {
|
|
1205
1205
|
if (r <= 0) {
|
|
1206
1206
|
return Number.POSITIVE_INFINITY;
|
|
1207
1207
|
}
|
|
1208
1208
|
r--;
|
|
1209
|
-
var
|
|
1210
|
-
for (var
|
|
1211
|
-
|
|
1209
|
+
var t = Nr[0];
|
|
1210
|
+
for (var e = 1; e < 15; e++) {
|
|
1211
|
+
t += Nr[e] / (r + e);
|
|
1212
1212
|
}
|
|
1213
|
-
var
|
|
1214
|
-
return
|
|
1213
|
+
var n = Ir + .5 + r;
|
|
1214
|
+
return kr + Math.log(t) - n + (r + .5) * Math.log(n);
|
|
1215
1215
|
}
|
|
1216
1216
|
|
|
1217
|
-
function
|
|
1217
|
+
function Pr(r) {
|
|
1218
1218
|
if (r < 0 || r > 1) {
|
|
1219
1219
|
throw new Error("bernoulliDistribution requires probability to be between 0 and 1 inclusive");
|
|
1220
1220
|
}
|
|
1221
1221
|
return [ 1 - r, r ];
|
|
1222
1222
|
}
|
|
1223
1223
|
|
|
1224
|
-
function
|
|
1225
|
-
if (
|
|
1224
|
+
function Sr(r, t) {
|
|
1225
|
+
if (t < 0 || t > 1 || r <= 0 || r % 1 !== 0) {
|
|
1226
1226
|
return undefined;
|
|
1227
1227
|
}
|
|
1228
|
+
var e = 0;
|
|
1228
1229
|
var n = 0;
|
|
1229
|
-
var a =
|
|
1230
|
-
var i = [];
|
|
1230
|
+
var a = [];
|
|
1231
1231
|
var o = 1;
|
|
1232
1232
|
do {
|
|
1233
|
-
|
|
1234
|
-
|
|
1235
|
-
|
|
1236
|
-
o = o * (r -
|
|
1237
|
-
} while (
|
|
1238
|
-
return
|
|
1233
|
+
a[e] = o * Math.pow(t, e) * Math.pow(1 - t, r - e);
|
|
1234
|
+
n += a[e];
|
|
1235
|
+
e++;
|
|
1236
|
+
o = o * (r - e + 1) / e;
|
|
1237
|
+
} while (n < 1 - qr);
|
|
1238
|
+
return a;
|
|
1239
1239
|
}
|
|
1240
1240
|
|
|
1241
|
-
function
|
|
1241
|
+
function Cr(r) {
|
|
1242
1242
|
if (r <= 0) {
|
|
1243
1243
|
return undefined;
|
|
1244
1244
|
}
|
|
1245
|
+
var t = 0;
|
|
1245
1246
|
var e = 0;
|
|
1246
|
-
var n =
|
|
1247
|
-
var a =
|
|
1248
|
-
var i = 1;
|
|
1247
|
+
var n = [];
|
|
1248
|
+
var a = 1;
|
|
1249
1249
|
do {
|
|
1250
|
-
|
|
1251
|
-
|
|
1252
|
-
|
|
1253
|
-
|
|
1254
|
-
} while (
|
|
1255
|
-
return
|
|
1250
|
+
n[t] = Math.exp(-r) * Math.pow(r, t) / a;
|
|
1251
|
+
e += n[t];
|
|
1252
|
+
t++;
|
|
1253
|
+
a *= t;
|
|
1254
|
+
} while (e < 1 - qr);
|
|
1255
|
+
return n;
|
|
1256
1256
|
}
|
|
1257
1257
|
|
|
1258
|
-
var
|
|
1258
|
+
var _r = {
|
|
1259
1259
|
1: {
|
|
1260
1260
|
.995: 0,
|
|
1261
1261
|
.99: 0,
|
|
@@ -1739,215 +1739,215 @@ var o = {
|
|
|
1739
1739
|
}
|
|
1740
1740
|
};
|
|
1741
1741
|
|
|
1742
|
-
function
|
|
1743
|
-
var
|
|
1744
|
-
var
|
|
1742
|
+
function Tr(r, t, e) {
|
|
1743
|
+
var a = n(r);
|
|
1744
|
+
var o = 0;
|
|
1745
1745
|
var i = 1;
|
|
1746
|
-
var u =
|
|
1747
|
-
var
|
|
1748
|
-
var
|
|
1749
|
-
for (var
|
|
1750
|
-
if (
|
|
1751
|
-
|
|
1746
|
+
var u = t(a);
|
|
1747
|
+
var f = [];
|
|
1748
|
+
var v = [];
|
|
1749
|
+
for (var h = 0; h < r.length; h++) {
|
|
1750
|
+
if (f[r[h]] === undefined) {
|
|
1751
|
+
f[r[h]] = 0;
|
|
1752
1752
|
}
|
|
1753
|
-
|
|
1753
|
+
f[r[h]]++;
|
|
1754
1754
|
}
|
|
1755
|
-
for (var
|
|
1756
|
-
if (s
|
|
1757
|
-
s
|
|
1755
|
+
for (var s = 0; s < f.length; s++) {
|
|
1756
|
+
if (f[s] === undefined) {
|
|
1757
|
+
f[s] = 0;
|
|
1758
1758
|
}
|
|
1759
1759
|
}
|
|
1760
|
-
for (var
|
|
1761
|
-
if (
|
|
1762
|
-
|
|
1760
|
+
for (var l in u) {
|
|
1761
|
+
if (l in f) {
|
|
1762
|
+
v[+l] = u[l] * r.length;
|
|
1763
1763
|
}
|
|
1764
1764
|
}
|
|
1765
|
-
for (var c =
|
|
1766
|
-
if (
|
|
1767
|
-
|
|
1768
|
-
|
|
1769
|
-
|
|
1770
|
-
|
|
1765
|
+
for (var c = v.length - 1; c >= 0; c--) {
|
|
1766
|
+
if (v[c] < 3) {
|
|
1767
|
+
v[c - 1] += v[c];
|
|
1768
|
+
v.pop();
|
|
1769
|
+
f[c - 1] += f[c];
|
|
1770
|
+
f.pop();
|
|
1771
1771
|
}
|
|
1772
1772
|
}
|
|
1773
|
-
for (var p = 0; p <
|
|
1774
|
-
|
|
1773
|
+
for (var p = 0; p < f.length; p++) {
|
|
1774
|
+
o += Math.pow(f[p] - v[p], 2) / v[p];
|
|
1775
1775
|
}
|
|
1776
|
-
var
|
|
1777
|
-
return
|
|
1776
|
+
var g = f.length - i - 1;
|
|
1777
|
+
return _r[g][e] < o;
|
|
1778
1778
|
}
|
|
1779
1779
|
|
|
1780
|
-
var
|
|
1780
|
+
var Vr = Math.sqrt(2 * Math.PI);
|
|
1781
1781
|
|
|
1782
|
-
var
|
|
1782
|
+
var Dr = {
|
|
1783
1783
|
gaussian: function(r) {
|
|
1784
|
-
return Math.exp(-.5 * r * r) /
|
|
1784
|
+
return Math.exp(-.5 * r * r) / Vr;
|
|
1785
1785
|
}
|
|
1786
1786
|
};
|
|
1787
1787
|
|
|
1788
|
-
var
|
|
1788
|
+
var Lr = {
|
|
1789
1789
|
nrd: function(r) {
|
|
1790
|
-
var
|
|
1791
|
-
var
|
|
1792
|
-
if (typeof
|
|
1793
|
-
|
|
1790
|
+
var t = Z(r);
|
|
1791
|
+
var e = _(r);
|
|
1792
|
+
if (typeof e === "number") {
|
|
1793
|
+
t = Math.min(t, e / 1.34);
|
|
1794
1794
|
}
|
|
1795
|
-
return 1.06 *
|
|
1795
|
+
return 1.06 * t * Math.pow(r.length, -.2);
|
|
1796
1796
|
}
|
|
1797
1797
|
};
|
|
1798
1798
|
|
|
1799
|
-
function
|
|
1799
|
+
function Rr(r, t, e) {
|
|
1800
1800
|
var n;
|
|
1801
|
-
if (
|
|
1802
|
-
n =
|
|
1803
|
-
} else if (typeof
|
|
1804
|
-
if (!
|
|
1805
|
-
throw new Error('Unknown kernel "' +
|
|
1801
|
+
if (t === undefined) {
|
|
1802
|
+
n = Dr.gaussian;
|
|
1803
|
+
} else if (typeof t === "string") {
|
|
1804
|
+
if (!Dr[t]) {
|
|
1805
|
+
throw new Error('Unknown kernel "' + t + '"');
|
|
1806
1806
|
}
|
|
1807
|
-
n =
|
|
1807
|
+
n = Dr[t];
|
|
1808
1808
|
} else {
|
|
1809
|
-
n =
|
|
1809
|
+
n = t;
|
|
1810
1810
|
}
|
|
1811
1811
|
var a;
|
|
1812
|
-
if (typeof
|
|
1813
|
-
a =
|
|
1814
|
-
} else if (typeof
|
|
1815
|
-
if (!
|
|
1816
|
-
throw new Error('Unknown bandwidth method "' +
|
|
1812
|
+
if (typeof e === "undefined") {
|
|
1813
|
+
a = Lr.nrd(r);
|
|
1814
|
+
} else if (typeof e === "string") {
|
|
1815
|
+
if (!Lr[e]) {
|
|
1816
|
+
throw new Error('Unknown bandwidth method "' + e + '"');
|
|
1817
1817
|
}
|
|
1818
|
-
a =
|
|
1818
|
+
a = Lr[e](r);
|
|
1819
1819
|
} else {
|
|
1820
|
-
a =
|
|
1820
|
+
a = e;
|
|
1821
1821
|
}
|
|
1822
|
-
return function(
|
|
1823
|
-
var
|
|
1824
|
-
var
|
|
1825
|
-
for (
|
|
1826
|
-
|
|
1822
|
+
return function(t) {
|
|
1823
|
+
var e = 0;
|
|
1824
|
+
var o = 0;
|
|
1825
|
+
for (e = 0; e < r.length; e++) {
|
|
1826
|
+
o += n((t - r[e]) / a);
|
|
1827
1827
|
}
|
|
1828
|
-
return
|
|
1828
|
+
return o / a / r.length;
|
|
1829
1829
|
};
|
|
1830
1830
|
}
|
|
1831
1831
|
|
|
1832
|
-
function
|
|
1833
|
-
return (r -
|
|
1832
|
+
function Ur(r, t, e) {
|
|
1833
|
+
return (r - t) / e;
|
|
1834
1834
|
}
|
|
1835
1835
|
|
|
1836
|
-
var
|
|
1836
|
+
var zr = Math.sqrt(2 * Math.PI);
|
|
1837
1837
|
|
|
1838
|
-
function
|
|
1839
|
-
var e = r;
|
|
1838
|
+
function Fr(r) {
|
|
1840
1839
|
var t = r;
|
|
1840
|
+
var e = r;
|
|
1841
1841
|
for (var n = 1; n < 15; n++) {
|
|
1842
|
-
|
|
1843
|
-
|
|
1842
|
+
e *= r * r / (2 * n + 1);
|
|
1843
|
+
t += e;
|
|
1844
1844
|
}
|
|
1845
|
-
return Math.round((.5 +
|
|
1845
|
+
return Math.round((.5 + t / zr * Math.exp(-r * r / 2)) * 1e4) / 1e4;
|
|
1846
1846
|
}
|
|
1847
1847
|
|
|
1848
|
-
var
|
|
1848
|
+
var Or = [];
|
|
1849
1849
|
|
|
1850
|
-
for (var
|
|
1851
|
-
|
|
1850
|
+
for (var Xr = 0; Xr <= 3.09; Xr += .01) {
|
|
1851
|
+
Or.push(Fr(Xr));
|
|
1852
1852
|
}
|
|
1853
1853
|
|
|
1854
|
-
function
|
|
1855
|
-
var
|
|
1856
|
-
var
|
|
1854
|
+
function Yr(r) {
|
|
1855
|
+
var t = Math.abs(r);
|
|
1856
|
+
var e = Math.min(Math.round(t * 100), Or.length - 1);
|
|
1857
1857
|
if (r >= 0) {
|
|
1858
|
-
return
|
|
1858
|
+
return Or[e];
|
|
1859
1859
|
} else {
|
|
1860
|
-
return Math.round((1 -
|
|
1860
|
+
return Math.round((1 - Or[e]) * 1e4) / 1e4;
|
|
1861
1861
|
}
|
|
1862
1862
|
}
|
|
1863
1863
|
|
|
1864
|
-
function
|
|
1864
|
+
function jr(r) {
|
|
1865
1865
|
return 1 / (Math.exp(-r) + 1);
|
|
1866
1866
|
}
|
|
1867
1867
|
|
|
1868
|
-
function
|
|
1869
|
-
var
|
|
1870
|
-
var
|
|
1868
|
+
function Kr(r) {
|
|
1869
|
+
var t = 1 / (1 + .5 * Math.abs(r));
|
|
1870
|
+
var e = t * Math.exp(-r * r + ((((((((.17087277 * t - .82215223) * t + 1.48851587) * t - 1.13520398) * t + .27886807) * t - .18628806) * t + .09678418) * t + .37409196) * t + 1.00002368) * t - 1.26551223);
|
|
1871
1871
|
if (r >= 0) {
|
|
1872
|
-
return 1 -
|
|
1872
|
+
return 1 - e;
|
|
1873
1873
|
} else {
|
|
1874
|
-
return
|
|
1874
|
+
return e - 1;
|
|
1875
1875
|
}
|
|
1876
1876
|
}
|
|
1877
1877
|
|
|
1878
|
-
function
|
|
1879
|
-
var
|
|
1880
|
-
var
|
|
1878
|
+
function Wr(r) {
|
|
1879
|
+
var t = 8 * (Math.PI - 3) / (3 * Math.PI * (4 - Math.PI));
|
|
1880
|
+
var e = Math.sqrt(Math.sqrt(Math.pow(2 / (Math.PI * t) + Math.log(1 - r * r) / 2, 2) - Math.log(1 - r * r) / t) - (2 / (Math.PI * t) + Math.log(1 - r * r) / 2));
|
|
1881
1881
|
if (r >= 0) {
|
|
1882
|
-
return
|
|
1882
|
+
return e;
|
|
1883
1883
|
} else {
|
|
1884
|
-
return -
|
|
1884
|
+
return -e;
|
|
1885
1885
|
}
|
|
1886
1886
|
}
|
|
1887
1887
|
|
|
1888
|
-
function
|
|
1888
|
+
function Br(r) {
|
|
1889
1889
|
if (r === 0) {
|
|
1890
|
-
r =
|
|
1890
|
+
r = qr;
|
|
1891
1891
|
} else if (r >= 1) {
|
|
1892
|
-
r = 1 -
|
|
1892
|
+
r = 1 - qr;
|
|
1893
1893
|
}
|
|
1894
|
-
return Math.sqrt(2) *
|
|
1894
|
+
return Math.sqrt(2) * Wr(2 * r - 1);
|
|
1895
1895
|
}
|
|
1896
1896
|
|
|
1897
|
-
function
|
|
1897
|
+
function Gr(r) {
|
|
1898
1898
|
if (r <= 0 || r >= 1) {
|
|
1899
1899
|
throw new Error("p must be strictly between zero and one");
|
|
1900
1900
|
}
|
|
1901
1901
|
return Math.log(r / (1 - r));
|
|
1902
1902
|
}
|
|
1903
1903
|
|
|
1904
|
-
function
|
|
1905
|
-
if (
|
|
1906
|
-
|
|
1904
|
+
function Hr(r, t, e, a, o) {
|
|
1905
|
+
if (a === undefined) {
|
|
1906
|
+
a = 1e4;
|
|
1907
1907
|
}
|
|
1908
|
-
if (
|
|
1909
|
-
|
|
1908
|
+
if (e === undefined) {
|
|
1909
|
+
e = "two_side";
|
|
1910
1910
|
}
|
|
1911
|
-
if (
|
|
1911
|
+
if (e !== "two_side" && e !== "greater" && e !== "less") {
|
|
1912
1912
|
throw new Error("`alternative` must be either 'two_side', 'greater', or 'less'.");
|
|
1913
1913
|
}
|
|
1914
|
-
var i =
|
|
1915
|
-
var
|
|
1916
|
-
var
|
|
1917
|
-
var
|
|
1918
|
-
var
|
|
1919
|
-
var
|
|
1920
|
-
for (var
|
|
1921
|
-
|
|
1922
|
-
var
|
|
1923
|
-
var
|
|
1924
|
-
var
|
|
1925
|
-
|
|
1926
|
-
}
|
|
1927
|
-
var
|
|
1928
|
-
if (
|
|
1929
|
-
for (var
|
|
1930
|
-
if (Math.abs(
|
|
1931
|
-
|
|
1914
|
+
var i = n(r);
|
|
1915
|
+
var u = n(t);
|
|
1916
|
+
var f = i - u;
|
|
1917
|
+
var v = new Array(a);
|
|
1918
|
+
var h = r.concat(t);
|
|
1919
|
+
var s = Math.floor(h.length / 2);
|
|
1920
|
+
for (var l = 0; l < a; l++) {
|
|
1921
|
+
R(h, o);
|
|
1922
|
+
var c = h.slice(0, s);
|
|
1923
|
+
var p = h.slice(s, h.length);
|
|
1924
|
+
var g = n(c) - n(p);
|
|
1925
|
+
v[l] = g;
|
|
1926
|
+
}
|
|
1927
|
+
var w = 0;
|
|
1928
|
+
if (e === "two_side") {
|
|
1929
|
+
for (var M = 0; M <= a; M++) {
|
|
1930
|
+
if (Math.abs(v[M]) >= Math.abs(f)) {
|
|
1931
|
+
w += 1;
|
|
1932
1932
|
}
|
|
1933
1933
|
}
|
|
1934
|
-
} else if (
|
|
1935
|
-
for (var
|
|
1936
|
-
if (
|
|
1937
|
-
|
|
1934
|
+
} else if (e === "greater") {
|
|
1935
|
+
for (var m = 0; m <= a; m++) {
|
|
1936
|
+
if (v[m] >= f) {
|
|
1937
|
+
w += 1;
|
|
1938
1938
|
}
|
|
1939
1939
|
}
|
|
1940
1940
|
} else {
|
|
1941
|
-
for (var
|
|
1942
|
-
if (
|
|
1943
|
-
|
|
1941
|
+
for (var d = 0; d <= a; d++) {
|
|
1942
|
+
if (v[d] <= f) {
|
|
1943
|
+
w += 1;
|
|
1944
1944
|
}
|
|
1945
1945
|
}
|
|
1946
1946
|
}
|
|
1947
|
-
return
|
|
1947
|
+
return w / a;
|
|
1948
1948
|
}
|
|
1949
1949
|
|
|
1950
|
-
function
|
|
1950
|
+
function Jr(r) {
|
|
1951
1951
|
if (typeof r === "number") {
|
|
1952
1952
|
if (r < 0) {
|
|
1953
1953
|
return -1;
|
|
@@ -1961,59 +1961,59 @@ function sign(r) {
|
|
|
1961
1961
|
}
|
|
1962
1962
|
}
|
|
1963
1963
|
|
|
1964
|
-
function
|
|
1964
|
+
function Qr(r, t, e, n, a) {
|
|
1965
1965
|
if (typeof r !== "function") {
|
|
1966
1966
|
throw new TypeError("func must be a function");
|
|
1967
1967
|
}
|
|
1968
|
-
for (var
|
|
1969
|
-
var
|
|
1970
|
-
if (r(
|
|
1971
|
-
return
|
|
1968
|
+
for (var o = 0; o < n; o++) {
|
|
1969
|
+
var i = (t + e) / 2;
|
|
1970
|
+
if (r(i) === 0 || Math.abs((e - t) / 2) < a) {
|
|
1971
|
+
return i;
|
|
1972
1972
|
}
|
|
1973
|
-
if (
|
|
1974
|
-
|
|
1973
|
+
if (Jr(r(i)) === Jr(r(t))) {
|
|
1974
|
+
t = i;
|
|
1975
1975
|
} else {
|
|
1976
|
-
|
|
1976
|
+
e = i;
|
|
1977
1977
|
}
|
|
1978
1978
|
}
|
|
1979
1979
|
throw new Error("maximum number of iterations exceeded");
|
|
1980
1980
|
}
|
|
1981
1981
|
|
|
1982
|
-
function
|
|
1983
|
-
var
|
|
1982
|
+
function Zr(r, t) {
|
|
1983
|
+
var e = 0;
|
|
1984
1984
|
for (var n = 0; n < r.length; n++) {
|
|
1985
|
-
var a = r[n] -
|
|
1986
|
-
|
|
1985
|
+
var a = r[n] - t[n];
|
|
1986
|
+
e += a * a;
|
|
1987
1987
|
}
|
|
1988
|
-
return Math.sqrt(
|
|
1988
|
+
return Math.sqrt(e);
|
|
1989
1989
|
}
|
|
1990
1990
|
|
|
1991
|
-
function
|
|
1992
|
-
if (
|
|
1991
|
+
function $r(r, t, e) {
|
|
1992
|
+
if (e === void 0) e = Math.random;
|
|
1993
1993
|
var n = null;
|
|
1994
|
-
var a =
|
|
1995
|
-
var
|
|
1996
|
-
var
|
|
1997
|
-
while (
|
|
1998
|
-
|
|
1994
|
+
var a = z(r, t, e);
|
|
1995
|
+
var o = null;
|
|
1996
|
+
var i = Number.MAX_VALUE;
|
|
1997
|
+
while (i !== 0) {
|
|
1998
|
+
o = rt(r, a);
|
|
1999
1999
|
n = a;
|
|
2000
|
-
a =
|
|
2001
|
-
|
|
2000
|
+
a = tt(r, o, t);
|
|
2001
|
+
i = et(a, n);
|
|
2002
2002
|
}
|
|
2003
2003
|
return {
|
|
2004
|
-
labels:
|
|
2004
|
+
labels: o,
|
|
2005
2005
|
centroids: a
|
|
2006
2006
|
};
|
|
2007
2007
|
}
|
|
2008
2008
|
|
|
2009
|
-
function
|
|
2009
|
+
function rt(r, t) {
|
|
2010
2010
|
return r.map((function(r) {
|
|
2011
|
-
var
|
|
2011
|
+
var e = Number.MAX_VALUE;
|
|
2012
2012
|
var n = -1;
|
|
2013
|
-
for (var a = 0; a <
|
|
2014
|
-
var
|
|
2015
|
-
if (
|
|
2016
|
-
|
|
2013
|
+
for (var a = 0; a < t.length; a++) {
|
|
2014
|
+
var o = Zr(r, t[a]);
|
|
2015
|
+
if (o < e) {
|
|
2016
|
+
e = o;
|
|
2017
2017
|
n = a;
|
|
2018
2018
|
}
|
|
2019
2019
|
}
|
|
@@ -2021,229 +2021,229 @@ function labelPoints(r, e) {
|
|
|
2021
2021
|
}));
|
|
2022
2022
|
}
|
|
2023
2023
|
|
|
2024
|
-
function
|
|
2024
|
+
function tt(r, t, e) {
|
|
2025
2025
|
var n = r[0].length;
|
|
2026
|
-
var a =
|
|
2027
|
-
var
|
|
2028
|
-
var
|
|
2029
|
-
for (var u = 0; u <
|
|
2030
|
-
var
|
|
2031
|
-
var
|
|
2032
|
-
var
|
|
2033
|
-
for (var
|
|
2034
|
-
|
|
2035
|
-
}
|
|
2036
|
-
|
|
2037
|
-
}
|
|
2038
|
-
for (var
|
|
2039
|
-
if (
|
|
2040
|
-
throw new Error("Centroid " +
|
|
2041
|
-
}
|
|
2042
|
-
var c = a[
|
|
2026
|
+
var a = F(e, n);
|
|
2027
|
+
var o = Array(e).fill(0);
|
|
2028
|
+
var i = r.length;
|
|
2029
|
+
for (var u = 0; u < i; u++) {
|
|
2030
|
+
var f = r[u];
|
|
2031
|
+
var v = t[u];
|
|
2032
|
+
var h = a[v];
|
|
2033
|
+
for (var s = 0; s < n; s++) {
|
|
2034
|
+
h[s] += f[s];
|
|
2035
|
+
}
|
|
2036
|
+
o[v] += 1;
|
|
2037
|
+
}
|
|
2038
|
+
for (var l = 0; l < e; l++) {
|
|
2039
|
+
if (o[l] === 0) {
|
|
2040
|
+
throw new Error("Centroid " + l + " has no friends");
|
|
2041
|
+
}
|
|
2042
|
+
var c = a[l];
|
|
2043
2043
|
for (var p = 0; p < n; p++) {
|
|
2044
|
-
c[p] /=
|
|
2044
|
+
c[p] /= o[l];
|
|
2045
2045
|
}
|
|
2046
2046
|
}
|
|
2047
2047
|
return a;
|
|
2048
2048
|
}
|
|
2049
2049
|
|
|
2050
|
-
function
|
|
2051
|
-
var
|
|
2050
|
+
function et(r, t) {
|
|
2051
|
+
var e = 0;
|
|
2052
2052
|
for (var n = 0; n < r.length; n++) {
|
|
2053
|
-
|
|
2053
|
+
e += Zr(r[n], t[n]);
|
|
2054
2054
|
}
|
|
2055
|
-
return
|
|
2055
|
+
return e;
|
|
2056
2056
|
}
|
|
2057
2057
|
|
|
2058
|
-
function
|
|
2059
|
-
if (r.length !==
|
|
2058
|
+
function nt(r, t) {
|
|
2059
|
+
if (r.length !== t.length) {
|
|
2060
2060
|
throw new Error("must have exactly as many labels as points");
|
|
2061
2061
|
}
|
|
2062
|
-
var
|
|
2063
|
-
var n =
|
|
2062
|
+
var e = at(t);
|
|
2063
|
+
var n = ot(r);
|
|
2064
2064
|
var a = [];
|
|
2065
|
-
for (var
|
|
2066
|
-
var
|
|
2067
|
-
if (t[
|
|
2068
|
-
var u =
|
|
2069
|
-
var
|
|
2070
|
-
|
|
2065
|
+
for (var o = 0; o < r.length; o++) {
|
|
2066
|
+
var i = 0;
|
|
2067
|
+
if (e[t[o]].length > 1) {
|
|
2068
|
+
var u = ut(o, e[t[o]], n);
|
|
2069
|
+
var f = it(o, t, e, n);
|
|
2070
|
+
i = (f - u) / Math.max(u, f);
|
|
2071
2071
|
}
|
|
2072
|
-
a.push(
|
|
2072
|
+
a.push(i);
|
|
2073
2073
|
}
|
|
2074
2074
|
return a;
|
|
2075
2075
|
}
|
|
2076
2076
|
|
|
2077
|
-
function
|
|
2078
|
-
var
|
|
2079
|
-
var
|
|
2077
|
+
function at(r) {
|
|
2078
|
+
var t = 1 + c(r);
|
|
2079
|
+
var e = Array(t);
|
|
2080
2080
|
for (var n = 0; n < r.length; n++) {
|
|
2081
2081
|
var a = r[n];
|
|
2082
|
-
if (
|
|
2083
|
-
|
|
2082
|
+
if (e[a] === undefined) {
|
|
2083
|
+
e[a] = [];
|
|
2084
2084
|
}
|
|
2085
|
-
|
|
2085
|
+
e[a].push(n);
|
|
2086
2086
|
}
|
|
2087
|
-
return
|
|
2087
|
+
return e;
|
|
2088
2088
|
}
|
|
2089
2089
|
|
|
2090
|
-
function
|
|
2091
|
-
var
|
|
2092
|
-
var
|
|
2093
|
-
for (var n = 0; n <
|
|
2090
|
+
function ot(r) {
|
|
2091
|
+
var t = r.length;
|
|
2092
|
+
var e = F(t, t);
|
|
2093
|
+
for (var n = 0; n < t; n++) {
|
|
2094
2094
|
for (var a = 0; a < n; a++) {
|
|
2095
|
-
|
|
2096
|
-
|
|
2095
|
+
e[n][a] = Zr(r[n], r[a]);
|
|
2096
|
+
e[a][n] = e[n][a];
|
|
2097
2097
|
}
|
|
2098
2098
|
}
|
|
2099
|
-
return
|
|
2099
|
+
return e;
|
|
2100
2100
|
}
|
|
2101
2101
|
|
|
2102
|
-
function
|
|
2103
|
-
var a =
|
|
2104
|
-
var
|
|
2105
|
-
for (var
|
|
2106
|
-
if (
|
|
2107
|
-
var u =
|
|
2108
|
-
if (u <
|
|
2109
|
-
|
|
2102
|
+
function it(r, t, e, n) {
|
|
2103
|
+
var a = t[r];
|
|
2104
|
+
var o = Number.MAX_VALUE;
|
|
2105
|
+
for (var i = 0; i < e.length; i++) {
|
|
2106
|
+
if (i !== a) {
|
|
2107
|
+
var u = ut(r, e[i], n);
|
|
2108
|
+
if (u < o) {
|
|
2109
|
+
o = u;
|
|
2110
2110
|
}
|
|
2111
2111
|
}
|
|
2112
2112
|
}
|
|
2113
|
-
return
|
|
2113
|
+
return o;
|
|
2114
2114
|
}
|
|
2115
2115
|
|
|
2116
|
-
function
|
|
2116
|
+
function ut(r, t, e) {
|
|
2117
2117
|
var n = 0;
|
|
2118
|
-
for (var a = 0; a <
|
|
2119
|
-
n +=
|
|
2118
|
+
for (var a = 0; a < t.length; a++) {
|
|
2119
|
+
n += e[r][t[a]];
|
|
2120
2120
|
}
|
|
2121
|
-
return n /
|
|
2121
|
+
return n / t.length;
|
|
2122
2122
|
}
|
|
2123
2123
|
|
|
2124
|
-
function
|
|
2125
|
-
var
|
|
2126
|
-
return
|
|
2124
|
+
function ft(r, t) {
|
|
2125
|
+
var e = nt(r, t);
|
|
2126
|
+
return c(e);
|
|
2127
2127
|
}
|
|
2128
2128
|
|
|
2129
|
-
function
|
|
2130
|
-
if (r === 0 &&
|
|
2129
|
+
function vt(r, t) {
|
|
2130
|
+
if (r === 0 && t === 0) {
|
|
2131
2131
|
return 0;
|
|
2132
2132
|
}
|
|
2133
|
-
return Math.abs((r -
|
|
2133
|
+
return Math.abs((r - t) / t);
|
|
2134
2134
|
}
|
|
2135
2135
|
|
|
2136
|
-
function
|
|
2137
|
-
if (
|
|
2138
|
-
return
|
|
2136
|
+
function ht(r, t, e) {
|
|
2137
|
+
if (e === void 0) e = qr;
|
|
2138
|
+
return vt(r, t) <= e;
|
|
2139
2139
|
}
|
|
2140
2140
|
|
|
2141
|
-
exports.addToMean =
|
|
2141
|
+
exports.addToMean = ir;
|
|
2142
2142
|
|
|
2143
|
-
exports.approxEqual =
|
|
2143
|
+
exports.approxEqual = ht;
|
|
2144
2144
|
|
|
2145
|
-
exports.bernoulliDistribution =
|
|
2145
|
+
exports.bernoulliDistribution = Pr;
|
|
2146
2146
|
|
|
2147
|
-
exports.binomialDistribution =
|
|
2147
|
+
exports.binomialDistribution = Sr;
|
|
2148
2148
|
|
|
2149
|
-
exports.bisect =
|
|
2149
|
+
exports.bisect = Qr;
|
|
2150
2150
|
|
|
2151
|
-
exports.chunk =
|
|
2151
|
+
exports.chunk = D;
|
|
2152
2152
|
|
|
2153
|
-
exports.coefficientOfVariation =
|
|
2153
|
+
exports.coefficientOfVariation = wr;
|
|
2154
2154
|
|
|
2155
|
-
exports.combinations =
|
|
2155
|
+
exports.combinations = ar;
|
|
2156
2156
|
|
|
2157
|
-
exports.combinationsReplacement =
|
|
2157
|
+
exports.combinationsReplacement = or;
|
|
2158
2158
|
|
|
2159
|
-
exports.combineMeans =
|
|
2159
|
+
exports.combineMeans = ur;
|
|
2160
2160
|
|
|
2161
|
-
exports.combineVariances =
|
|
2161
|
+
exports.combineVariances = fr;
|
|
2162
2162
|
|
|
2163
|
-
exports.cumulativeStdLogisticProbability =
|
|
2163
|
+
exports.cumulativeStdLogisticProbability = jr;
|
|
2164
2164
|
|
|
2165
|
-
exports.epsilon =
|
|
2165
|
+
exports.epsilon = qr;
|
|
2166
2166
|
|
|
2167
|
-
exports.extent =
|
|
2167
|
+
exports.extent = p;
|
|
2168
2168
|
|
|
2169
|
-
exports.factorial =
|
|
2169
|
+
exports.factorial = Er;
|
|
2170
2170
|
|
|
2171
|
-
exports.gamma =
|
|
2171
|
+
exports.gamma = yr;
|
|
2172
2172
|
|
|
2173
|
-
exports.gammaln =
|
|
2173
|
+
exports.gammaln = Ar;
|
|
2174
2174
|
|
|
2175
|
-
exports.geometricMean =
|
|
2175
|
+
exports.geometricMean = vr;
|
|
2176
2176
|
|
|
2177
|
-
exports.harmonicMean =
|
|
2177
|
+
exports.harmonicMean = sr;
|
|
2178
2178
|
|
|
2179
|
-
exports.interquartileRange =
|
|
2179
|
+
exports.interquartileRange = _;
|
|
2180
2180
|
|
|
2181
|
-
exports.jenks =
|
|
2181
|
+
exports.jenks = G;
|
|
2182
2182
|
|
|
2183
|
-
exports.linearRegression =
|
|
2183
|
+
exports.linearRegression = r;
|
|
2184
2184
|
|
|
2185
|
-
exports.linearRegressionLine =
|
|
2185
|
+
exports.linearRegressionLine = t;
|
|
2186
2186
|
|
|
2187
|
-
exports.logAverage =
|
|
2187
|
+
exports.logAverage = hr;
|
|
2188
2188
|
|
|
2189
|
-
exports.logit =
|
|
2189
|
+
exports.logit = Gr;
|
|
2190
2190
|
|
|
2191
|
-
exports.max =
|
|
2191
|
+
exports.max = c;
|
|
2192
2192
|
|
|
2193
|
-
exports.mean =
|
|
2193
|
+
exports.mean = n;
|
|
2194
2194
|
|
|
2195
|
-
exports.median =
|
|
2195
|
+
exports.median = T;
|
|
2196
2196
|
|
|
2197
|
-
exports.medianAbsoluteDeviation =
|
|
2197
|
+
exports.medianAbsoluteDeviation = V;
|
|
2198
2198
|
|
|
2199
|
-
exports.min =
|
|
2199
|
+
exports.min = l;
|
|
2200
2200
|
|
|
2201
|
-
exports.mode =
|
|
2201
|
+
exports.mode = h;
|
|
2202
2202
|
|
|
2203
|
-
exports.poissonDistribution =
|
|
2203
|
+
exports.poissonDistribution = Cr;
|
|
2204
2204
|
|
|
2205
|
-
exports.probit =
|
|
2205
|
+
exports.probit = Br;
|
|
2206
2206
|
|
|
2207
|
-
exports.product =
|
|
2207
|
+
exports.product = d;
|
|
2208
2208
|
|
|
2209
|
-
exports.quantile =
|
|
2209
|
+
exports.quantile = E;
|
|
2210
2210
|
|
|
2211
|
-
exports.quantileRank =
|
|
2211
|
+
exports.quantileRank = C;
|
|
2212
2212
|
|
|
2213
|
-
exports.quickselect =
|
|
2213
|
+
exports.quickselect = x;
|
|
2214
2214
|
|
|
2215
|
-
exports.rSquared =
|
|
2215
|
+
exports.rSquared = u;
|
|
2216
2216
|
|
|
2217
|
-
exports.rootMeanSquare =
|
|
2217
|
+
exports.rootMeanSquare = gr;
|
|
2218
2218
|
|
|
2219
|
-
exports.sample =
|
|
2219
|
+
exports.sample = z;
|
|
2220
2220
|
|
|
2221
|
-
exports.sampleCorrelation =
|
|
2221
|
+
exports.sampleCorrelation = $;
|
|
2222
2222
|
|
|
2223
|
-
exports.sampleCovariance =
|
|
2223
|
+
exports.sampleCovariance = J;
|
|
2224
2224
|
|
|
2225
|
-
exports.sampleSkewness =
|
|
2225
|
+
exports.sampleSkewness = tr;
|
|
2226
2226
|
|
|
2227
|
-
exports.sampleStandardDeviation =
|
|
2227
|
+
exports.sampleStandardDeviation = Z;
|
|
2228
2228
|
|
|
2229
|
-
exports.sampleVariance =
|
|
2229
|
+
exports.sampleVariance = Q;
|
|
2230
2230
|
|
|
2231
|
-
exports.sampleWithReplacement =
|
|
2231
|
+
exports.sampleWithReplacement = L;
|
|
2232
2232
|
|
|
2233
|
-
exports.shuffle =
|
|
2233
|
+
exports.shuffle = U;
|
|
2234
2234
|
|
|
2235
|
-
exports.standardDeviation =
|
|
2235
|
+
exports.standardDeviation = i;
|
|
2236
2236
|
|
|
2237
|
-
exports.subtractFromMean =
|
|
2237
|
+
exports.subtractFromMean = pr;
|
|
2238
2238
|
|
|
2239
|
-
exports.sum =
|
|
2239
|
+
exports.sum = e;
|
|
2240
2240
|
|
|
2241
|
-
exports.sumNthPowerDeviations =
|
|
2241
|
+
exports.sumNthPowerDeviations = a;
|
|
2242
2242
|
|
|
2243
|
-
exports.tTest =
|
|
2243
|
+
exports.tTest = Mr;
|
|
2244
2244
|
|
|
2245
|
-
exports.tTestTwoSample =
|
|
2245
|
+
exports.tTestTwoSample = mr;
|
|
2246
2246
|
|
|
2247
|
-
exports.variance =
|
|
2247
|
+
exports.variance = o;
|
|
2248
2248
|
|
|
2249
|
-
exports.zScore =
|
|
2249
|
+
exports.zScore = Ur;
|