nlptoolkit-classification 1.0.8 → 1.0.9
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/dist/Attribute/Attribute.js +6 -16
- package/dist/Attribute/Attribute.js.map +1 -1
- package/dist/Attribute/AttributeType.js +22 -32
- package/dist/Attribute/AttributeType.js.map +1 -1
- package/dist/Attribute/BinaryAttribute.js +14 -24
- package/dist/Attribute/BinaryAttribute.js.map +1 -1
- package/dist/Attribute/ContinuousAttribute.js +46 -55
- package/dist/Attribute/ContinuousAttribute.js.map +1 -1
- package/dist/Attribute/DiscreteAttribute.js +38 -48
- package/dist/Attribute/DiscreteAttribute.js.map +1 -1
- package/dist/Attribute/DiscreteIndexedAttribute.js +47 -55
- package/dist/Attribute/DiscreteIndexedAttribute.js.map +1 -1
- package/dist/DataSet/DataDefinition.js +115 -123
- package/dist/DataSet/DataDefinition.js.map +1 -1
- package/dist/DataSet/DataSet.js +268 -245
- package/dist/DataSet/DataSet.js.map +1 -1
- package/dist/DistanceMetric/DistanceMetric.js +2 -12
- package/dist/DistanceMetric/EuclidianDistance.js +27 -37
- package/dist/DistanceMetric/EuclidianDistance.js.map +1 -1
- package/dist/DistanceMetric/MahalanobisDistance.js +27 -36
- package/dist/DistanceMetric/MahalanobisDistance.js.map +1 -1
- package/dist/Experiment/BootstrapRun.js +31 -40
- package/dist/Experiment/BootstrapRun.js.map +1 -1
- package/dist/Experiment/Experiment.js +46 -53
- package/dist/Experiment/Experiment.js.map +1 -1
- package/dist/Experiment/KFoldRun.js +45 -54
- package/dist/Experiment/KFoldRun.js.map +1 -1
- package/dist/Experiment/KFoldRunSeparateTest.js +48 -58
- package/dist/Experiment/KFoldRunSeparateTest.js.map +1 -1
- package/dist/Experiment/MultipleRun.js +2 -12
- package/dist/Experiment/MxKFoldRun.js +31 -40
- package/dist/Experiment/MxKFoldRun.js.map +1 -1
- package/dist/Experiment/MxKFoldRunSeparateTest.js +35 -44
- package/dist/Experiment/MxKFoldRunSeparateTest.js.map +1 -1
- package/dist/Experiment/SingleRun.js +2 -12
- package/dist/Experiment/SingleRunWithK.js +39 -48
- package/dist/Experiment/SingleRunWithK.js.map +1 -1
- package/dist/Experiment/StratifiedKFoldRun.js +26 -36
- package/dist/Experiment/StratifiedKFoldRun.js.map +1 -1
- package/dist/Experiment/StratifiedKFoldRunSeparateTest.js +30 -40
- package/dist/Experiment/StratifiedKFoldRunSeparateTest.js.map +1 -1
- package/dist/Experiment/StratifiedMxKFoldRun.js +29 -39
- package/dist/Experiment/StratifiedMxKFoldRun.js.map +1 -1
- package/dist/Experiment/StratifiedMxKFoldRunSeparateTest.js +34 -43
- package/dist/Experiment/StratifiedMxKFoldRunSeparateTest.js.map +1 -1
- package/dist/Experiment/StratifiedSingleRunWithK.js +27 -36
- package/dist/Experiment/StratifiedSingleRunWithK.js.map +1 -1
- package/dist/FeatureSelection/BackwardSelection.js +26 -36
- package/dist/FeatureSelection/BackwardSelection.js.map +1 -1
- package/dist/FeatureSelection/FeatureSubSet.js +72 -82
- package/dist/FeatureSelection/FeatureSubSet.js.map +1 -1
- package/dist/FeatureSelection/FloatingSelection.js +25 -35
- package/dist/FeatureSelection/FloatingSelection.js.map +1 -1
- package/dist/FeatureSelection/ForwardSelection.js +25 -35
- package/dist/FeatureSelection/ForwardSelection.js.map +1 -1
- package/dist/FeatureSelection/SubSetSelection.js +69 -78
- package/dist/FeatureSelection/SubSetSelection.js.map +1 -1
- package/dist/Filter/DiscreteToContinuous.js +50 -60
- package/dist/Filter/DiscreteToContinuous.js.map +1 -1
- package/dist/Filter/DiscreteToIndexed.js +40 -50
- package/dist/Filter/DiscreteToIndexed.js.map +1 -1
- package/dist/Filter/FeatureFilter.js +23 -32
- package/dist/Filter/FeatureFilter.js.map +1 -1
- package/dist/Filter/LaryFilter.js +46 -55
- package/dist/Filter/LaryFilter.js.map +1 -1
- package/dist/Filter/LaryToBinary.js +48 -58
- package/dist/Filter/LaryToBinary.js.map +1 -1
- package/dist/Filter/Normalize.js +33 -41
- package/dist/Filter/Normalize.js.map +1 -1
- package/dist/Filter/Pca.js +86 -96
- package/dist/Filter/Pca.js.map +1 -1
- package/dist/Filter/TrainedFeatureFilter.js +14 -24
- package/dist/Filter/TrainedFeatureFilter.js.map +1 -1
- package/dist/Instance/CompositeInstance.js +46 -56
- package/dist/Instance/CompositeInstance.js.map +1 -1
- package/dist/Instance/Instance.js +145 -154
- package/dist/Instance/Instance.js.map +1 -1
- package/dist/InstanceList/InstanceList.js +466 -443
- package/dist/InstanceList/InstanceList.js.map +1 -1
- package/dist/InstanceList/InstanceListOfSameClass.js +23 -32
- package/dist/InstanceList/InstanceListOfSameClass.js.map +1 -1
- package/dist/InstanceList/Partition.js +167 -177
- package/dist/InstanceList/Partition.js.map +1 -1
- package/dist/Model/DecisionTree/DecisionCondition.js +71 -80
- package/dist/Model/DecisionTree/DecisionCondition.js.map +1 -1
- package/dist/Model/DecisionTree/DecisionNode.js +302 -311
- package/dist/Model/DecisionTree/DecisionNode.js.map +1 -1
- package/dist/Model/DecisionTree/DecisionStump.js +22 -32
- package/dist/Model/DecisionTree/DecisionStump.js.map +1 -1
- package/dist/Model/DecisionTree/DecisionTree.js +89 -98
- package/dist/Model/DecisionTree/DecisionTree.js.map +1 -1
- package/dist/Model/DummyModel.js +64 -73
- package/dist/Model/DummyModel.js.map +1 -1
- package/dist/Model/Ensemble/BaggingModel.js +34 -44
- package/dist/Model/Ensemble/BaggingModel.js.map +1 -1
- package/dist/Model/Ensemble/RandomForestModel.js +31 -41
- package/dist/Model/Ensemble/RandomForestModel.js.map +1 -1
- package/dist/Model/Ensemble/TreeEnsembleModel.js +55 -64
- package/dist/Model/Ensemble/TreeEnsembleModel.js.map +1 -1
- package/dist/Model/Model.js +130 -140
- package/dist/Model/Model.js.map +1 -1
- package/dist/Model/NeuralNetwork/DeepNetworkModel.js +162 -169
- package/dist/Model/NeuralNetwork/DeepNetworkModel.js.map +1 -1
- package/dist/Model/NeuralNetwork/LinearPerceptronModel.js +69 -78
- package/dist/Model/NeuralNetwork/LinearPerceptronModel.js.map +1 -1
- package/dist/Model/NeuralNetwork/MultiLayerPerceptronModel.js +112 -120
- package/dist/Model/NeuralNetwork/MultiLayerPerceptronModel.js.map +1 -1
- package/dist/Model/NeuralNetwork/NeuralNetworkModel.js +197 -201
- package/dist/Model/NeuralNetwork/NeuralNetworkModel.js.map +1 -1
- package/dist/Model/NonParametric/KnnInstance.js +21 -29
- package/dist/Model/NonParametric/KnnInstance.js.map +1 -1
- package/dist/Model/NonParametric/KnnModel.js +101 -108
- package/dist/Model/NonParametric/KnnModel.js.map +1 -1
- package/dist/Model/Parametric/GaussianModel.js +82 -91
- package/dist/Model/Parametric/GaussianModel.js.map +1 -1
- package/dist/Model/Parametric/KMeansModel.js +59 -67
- package/dist/Model/Parametric/KMeansModel.js.map +1 -1
- package/dist/Model/Parametric/LdaModel.js +83 -91
- package/dist/Model/Parametric/LdaModel.js.map +1 -1
- package/dist/Model/Parametric/NaiveBayesModel.js +119 -132
- package/dist/Model/Parametric/NaiveBayesModel.js.map +1 -1
- package/dist/Model/Parametric/QdaModel.js +70 -79
- package/dist/Model/Parametric/QdaModel.js.map +1 -1
- package/dist/Model/RandomModel.js +85 -92
- package/dist/Model/RandomModel.js.map +1 -1
- package/dist/Model/ValidatedModel.js +21 -31
- package/dist/Model/ValidatedModel.js.map +1 -1
- package/dist/Parameter/ActivationFunction.js +9 -19
- package/dist/Parameter/ActivationFunction.js.map +1 -1
- package/dist/Parameter/BaggingParameter.js +24 -33
- package/dist/Parameter/BaggingParameter.js.map +1 -1
- package/dist/Parameter/C45Parameter.js +34 -42
- package/dist/Parameter/C45Parameter.js.map +1 -1
- package/dist/Parameter/DeepNetworkParameter.js +48 -56
- package/dist/Parameter/DeepNetworkParameter.js.map +1 -1
- package/dist/Parameter/KMeansParameter.js +29 -38
- package/dist/Parameter/KMeansParameter.js.map +1 -1
- package/dist/Parameter/KnnParameter.js +25 -34
- package/dist/Parameter/KnnParameter.js.map +1 -1
- package/dist/Parameter/LinearPerceptronParameter.js +56 -62
- package/dist/Parameter/LinearPerceptronParameter.js.map +1 -1
- package/dist/Parameter/MultiLayerPerceptronParameter.js +38 -46
- package/dist/Parameter/MultiLayerPerceptronParameter.js.map +1 -1
- package/dist/Parameter/Parameter.js +21 -30
- package/dist/Parameter/Parameter.js.map +1 -1
- package/dist/Parameter/RandomForestParameter.js +25 -34
- package/dist/Parameter/RandomForestParameter.js.map +1 -1
- package/dist/Performance/ClassificationPerformance.js +24 -33
- package/dist/Performance/ClassificationPerformance.js.map +1 -1
- package/dist/Performance/ConfusionMatrix.js +149 -158
- package/dist/Performance/ConfusionMatrix.js.map +1 -1
- package/dist/Performance/DetailedClassificationPerformance.js +23 -32
- package/dist/Performance/DetailedClassificationPerformance.js.map +1 -1
- package/dist/Performance/ExperimentPerformance.js +184 -161
- package/dist/Performance/ExperimentPerformance.js.map +1 -1
- package/dist/Performance/Performance.js +21 -30
- package/dist/Performance/Performance.js.map +1 -1
- package/dist/StatisticalTest/Combined5x2F.js +41 -51
- package/dist/StatisticalTest/Combined5x2F.js.map +1 -1
- package/dist/StatisticalTest/Combined5x2t.js +42 -52
- package/dist/StatisticalTest/Combined5x2t.js.map +1 -1
- package/dist/StatisticalTest/Paired5x2t.js +40 -50
- package/dist/StatisticalTest/Paired5x2t.js.map +1 -1
- package/dist/StatisticalTest/PairedTest.js +31 -41
- package/dist/StatisticalTest/PairedTest.js.map +1 -1
- package/dist/StatisticalTest/Pairedt.js +38 -48
- package/dist/StatisticalTest/Pairedt.js.map +1 -1
- package/dist/StatisticalTest/Sign.js +50 -60
- package/dist/StatisticalTest/Sign.js.map +1 -1
- package/dist/StatisticalTest/StatisticalTestResult.js +65 -73
- package/dist/StatisticalTest/StatisticalTestResult.js.map +1 -1
- package/dist/StatisticalTest/StatisticalTestResultType.js +11 -21
- package/dist/StatisticalTest/StatisticalTestResultType.js.map +1 -1
- package/dist/index.js +95 -101
- package/dist/index.js.map +1 -1
- package/package.json +7 -6
- package/tsconfig.json +4 -3
- package/source/tsconfig.json +0 -13
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SubSetSelection.js","sourceRoot":"","sources":["../../source/FeatureSelection/SubSetSelection.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SubSetSelection.js","sourceRoot":"","sources":["../../source/FeatureSelection/SubSetSelection.ts"],"names":[],"mappings":";;;AAIA,MAAsB,eAAe;IAEvB,aAAa,CAAe;IAItC;;;;OAIG;IACH,YAAsB,aAA4B;QAC9C,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA;IACtC,CAAC;IAED;;;;;;OAMG;IACO,OAAO,CAAC,iBAAuC,EAAE,OAAsB,EAAE,gBAAwB;QACvG,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvB,IAAI,SAAS,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;gBAChC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBACjB,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACtC,CAAC;QACL,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACO,QAAQ,CAAC,iBAAuC,EAAE,OAAsB;QAC9E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,IAAI,SAAS,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;YAChC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACpB,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACtC,CAAC;IACL,CAAC;IAED;;;;;;;OAOG;IACH,OAAO,CAAC,WAAwB,EAAE,UAAsB;QACpD,IAAI,SAAS,GAAG,IAAI,GAAG,EAAiB,CAAC;QACzC,IAAI,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC;QAC9B,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACpB,IAAI,WAAW,GAAG,IAAI,CAAC;QACvB,IAAI,eAAe,GAAG,SAAS,EAAE,kBAAkB,CAAC;QACpD,IAAI,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,EAAC,CAAC;YACjB,eAAe,GAAG,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC,CAAC;QACtF,CAAC;QACD,OAAO,WAAW,EAAE,CAAC;YACjB,WAAW,GAAG,KAAK,CAAC;YACpB,IAAI,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,UAAU,EAAE,CAAC,iBAAiB,EAAE,CAAC,cAAc,EAAE,CAAC,CAAC;YACtG,KAAK,IAAI,eAAe,IAAI,aAAa,EAAE,CAAC;gBACxC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC;oBAClC,IAAI,eAAe,CAAC,IAAI,EAAE,GAAG,CAAC,EAAC,CAAC;wBAC5B,kBAAkB,GAAG,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,yBAAyB,CAAC,eAAe,CAAC,CAAC,CAAC;wBAChG,IAAI,eAAe,IAAI,IAAI,IAAI,kBAAkB,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;4BAC1E,IAAI,GAAG,eAAe,CAAC;4BACvB,eAAe,GAAG,kBAAkB,CAAC;4BACrC,WAAW,GAAG,IAAI,CAAC;wBACvB,CAAC;oBACL,CAAC;oBACD,SAAS,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;gBACnC,CAAC;YACL,CAAC;QACL,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;CAEJ;AAnFD,0CAmFC"}
|
|
@@ -1,69 +1,59 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
* for each discrete attribute with L possible values, L more continuous attributes will be added.
|
|
20
|
-
*/
|
|
21
|
-
convertDataDefinition() {
|
|
22
|
-
let dataDefinition = this.dataSet.getDataDefinition();
|
|
23
|
-
let size = dataDefinition.attributeCount();
|
|
24
|
-
for (let i = 0; i < size; i++) {
|
|
25
|
-
if (this.attributeDistributions[i].size > 0) {
|
|
26
|
-
for (let j = 0; j < this.attributeDistributions[i].size; j++) {
|
|
27
|
-
dataDefinition.addAttribute(AttributeType_1.AttributeType.CONTINUOUS);
|
|
28
|
-
}
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DiscreteToContinuous = void 0;
|
|
4
|
+
const LaryFilter_1 = require("./LaryFilter");
|
|
5
|
+
const ContinuousAttribute_1 = require("../Attribute/ContinuousAttribute");
|
|
6
|
+
const AttributeType_1 = require("../Attribute/AttributeType");
|
|
7
|
+
class DiscreteToContinuous extends LaryFilter_1.LaryFilter {
|
|
8
|
+
/**
|
|
9
|
+
* Converts the data definition with discrete attributes, to data definition with continuous attributes. Basically,
|
|
10
|
+
* for each discrete attribute with L possible values, L more continuous attributes will be added.
|
|
11
|
+
*/
|
|
12
|
+
convertDataDefinition() {
|
|
13
|
+
let dataDefinition = this.dataSet.getDataDefinition();
|
|
14
|
+
let size = dataDefinition.attributeCount();
|
|
15
|
+
for (let i = 0; i < size; i++) {
|
|
16
|
+
if (this.attributeDistributions[i].size > 0) {
|
|
17
|
+
for (let j = 0; j < this.attributeDistributions[i].size; j++) {
|
|
18
|
+
dataDefinition.addAttribute(AttributeType_1.AttributeType.CONTINUOUS);
|
|
29
19
|
}
|
|
30
20
|
}
|
|
31
|
-
this.removeDiscreteAttributesFromDataDefinition(size);
|
|
32
21
|
}
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
22
|
+
this.removeDiscreteAttributesFromDataDefinition(size);
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Converts discrete attributes of a single instance to continuous version using 1-of-L encoding. For example, if
|
|
26
|
+
* an attribute has values red, green, blue; this attribute will be converted to 3 continuous attributes where
|
|
27
|
+
* red will have the value 100, green will have the value 010, and blue will have the value 001.
|
|
28
|
+
*
|
|
29
|
+
* @param instance The instance to be converted.
|
|
30
|
+
*/
|
|
31
|
+
convertInstance(instance) {
|
|
32
|
+
let size = instance.attributeSize();
|
|
33
|
+
for (let i = 0; i < size; i++) {
|
|
34
|
+
if (this.attributeDistributions[i].size > 0) {
|
|
35
|
+
let index = this.attributeDistributions[i].getIndex(instance.getAttribute(i).toString());
|
|
36
|
+
for (let j = 0; j < this.attributeDistributions[i].size; j++) {
|
|
37
|
+
if (j != index) {
|
|
38
|
+
instance.addAttribute(new ContinuousAttribute_1.ContinuousAttribute(0));
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
instance.addAttribute(new ContinuousAttribute_1.ContinuousAttribute(1));
|
|
52
42
|
}
|
|
53
43
|
}
|
|
54
44
|
}
|
|
55
|
-
this.removeDiscreteAttributesFromInstance(instance, size);
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* Constructor for discrete to continuous filter.
|
|
59
|
-
*
|
|
60
|
-
* @param dataSet The dataSet whose instances whose discrete attributes will be converted to continuous attributes using
|
|
61
|
-
* 1-of-L encoding.
|
|
62
|
-
*/
|
|
63
|
-
constructor(dataSet) {
|
|
64
|
-
super(dataSet);
|
|
65
45
|
}
|
|
46
|
+
this.removeDiscreteAttributesFromInstance(instance, size);
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Constructor for discrete to continuous filter.
|
|
50
|
+
*
|
|
51
|
+
* @param dataSet The dataSet whose instances whose discrete attributes will be converted to continuous attributes using
|
|
52
|
+
* 1-of-L encoding.
|
|
53
|
+
*/
|
|
54
|
+
constructor(dataSet) {
|
|
55
|
+
super(dataSet);
|
|
66
56
|
}
|
|
67
|
-
|
|
68
|
-
|
|
57
|
+
}
|
|
58
|
+
exports.DiscreteToContinuous = DiscreteToContinuous;
|
|
69
59
|
//# sourceMappingURL=DiscreteToContinuous.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DiscreteToContinuous.js","sourceRoot":"","sources":["../../source/Filter/DiscreteToContinuous.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DiscreteToContinuous.js","sourceRoot":"","sources":["../../source/Filter/DiscreteToContinuous.ts"],"names":[],"mappings":";;;AAAA,6CAAwC;AAGxC,0EAAqE;AACrE,8DAAyD;AAEzD,MAAa,oBAAqB,SAAQ,uBAAU;IAEhD;;;OAGG;IACH,qBAAqB;QACjB,IAAI,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;QACtD,IAAI,IAAI,GAAG,cAAc,CAAC,cAAc,EAAE,CAAC;QAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5B,IAAI,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;oBAC3D,cAAc,CAAC,YAAY,CAAC,6BAAa,CAAC,UAAU,CAAC,CAAC;gBAC1D,CAAC;YACL,CAAC;QACL,CAAC;QACD,IAAI,CAAC,0CAA0C,CAAC,IAAI,CAAC,CAAC;IAC1D,CAAC;IAED;;;;;;OAMG;IACH,eAAe,CAAC,QAAkB;QAC9B,IAAI,IAAI,GAAG,QAAQ,CAAC,aAAa,EAAE,CAAC;QACpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5B,IAAI,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBAC1C,IAAI,KAAK,GAAG,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACzF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;oBAC3D,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC;wBACb,QAAQ,CAAC,YAAY,CAAC,IAAI,yCAAmB,CAAC,CAAC,CAAC,CAAC,CAAC;oBACtD,CAAC;yBAAM,CAAC;wBACJ,QAAQ,CAAC,YAAY,CAAC,IAAI,yCAAmB,CAAC,CAAC,CAAC,CAAC,CAAC;oBACtD,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;QACD,IAAI,CAAC,oCAAoC,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC9D,CAAC;IAED;;;;;OAKG;IACH,YAAY,OAAgB;QACxB,KAAK,CAAC,OAAO,CAAC,CAAC;IACnB,CAAC;CACJ;AApDD,oDAoDC"}
|
|
@@ -1,56 +1,46 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
/**
|
|
18
|
-
* Converts the data definition with discrete attributes, to data definition with DISCRETE_INDEXED attributes.
|
|
19
|
-
*/
|
|
20
|
-
convertDataDefinition() {
|
|
21
|
-
let dataDefinition = this.dataSet.getDataDefinition();
|
|
22
|
-
let size = dataDefinition.attributeCount();
|
|
23
|
-
for (let i = 0; i < size; i++) {
|
|
24
|
-
if (this.attributeDistributions[i].size > 0) {
|
|
25
|
-
dataDefinition.addAttribute(AttributeType_1.AttributeType.DISCRETE_INDEXED);
|
|
26
|
-
}
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DiscreteToIndexed = void 0;
|
|
4
|
+
const LaryFilter_1 = require("./LaryFilter");
|
|
5
|
+
const DiscreteIndexedAttribute_1 = require("../Attribute/DiscreteIndexedAttribute");
|
|
6
|
+
const AttributeType_1 = require("../Attribute/AttributeType");
|
|
7
|
+
class DiscreteToIndexed extends LaryFilter_1.LaryFilter {
|
|
8
|
+
/**
|
|
9
|
+
* Converts the data definition with discrete attributes, to data definition with DISCRETE_INDEXED attributes.
|
|
10
|
+
*/
|
|
11
|
+
convertDataDefinition() {
|
|
12
|
+
let dataDefinition = this.dataSet.getDataDefinition();
|
|
13
|
+
let size = dataDefinition.attributeCount();
|
|
14
|
+
for (let i = 0; i < size; i++) {
|
|
15
|
+
if (this.attributeDistributions[i].size > 0) {
|
|
16
|
+
dataDefinition.addAttribute(AttributeType_1.AttributeType.DISCRETE_INDEXED);
|
|
27
17
|
}
|
|
28
|
-
this.removeDiscreteAttributesFromDataDefinition(size);
|
|
29
18
|
}
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
19
|
+
this.removeDiscreteAttributesFromDataDefinition(size);
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Converts discrete attributes of a single instance to indexed version.
|
|
23
|
+
*
|
|
24
|
+
* @param instance The instance to be converted.
|
|
25
|
+
*/
|
|
26
|
+
convertInstance(instance) {
|
|
27
|
+
let size = instance.attributeSize();
|
|
28
|
+
for (let i = 0; i < size; i++) {
|
|
29
|
+
if (this.attributeDistributions[i].size > 0) {
|
|
30
|
+
let index = this.attributeDistributions[i].getIndex(instance.getAttribute(i).toString());
|
|
31
|
+
instance.addAttribute(new DiscreteIndexedAttribute_1.DiscreteIndexedAttribute(instance.getAttribute(i).toString(), index, this.attributeDistributions[i].size));
|
|
42
32
|
}
|
|
43
|
-
this.removeDiscreteAttributesFromInstance(instance, size);
|
|
44
|
-
}
|
|
45
|
-
/**
|
|
46
|
-
* Constructor for discrete to indexed filter.
|
|
47
|
-
*
|
|
48
|
-
* @param dataSet The dataSet whose instances whose discrete attributes will be converted to indexed attributes
|
|
49
|
-
*/
|
|
50
|
-
constructor(dataSet) {
|
|
51
|
-
super(dataSet);
|
|
52
33
|
}
|
|
34
|
+
this.removeDiscreteAttributesFromInstance(instance, size);
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Constructor for discrete to indexed filter.
|
|
38
|
+
*
|
|
39
|
+
* @param dataSet The dataSet whose instances whose discrete attributes will be converted to indexed attributes
|
|
40
|
+
*/
|
|
41
|
+
constructor(dataSet) {
|
|
42
|
+
super(dataSet);
|
|
53
43
|
}
|
|
54
|
-
|
|
55
|
-
|
|
44
|
+
}
|
|
45
|
+
exports.DiscreteToIndexed = DiscreteToIndexed;
|
|
56
46
|
//# sourceMappingURL=DiscreteToIndexed.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DiscreteToIndexed.js","sourceRoot":"","sources":["../../source/Filter/DiscreteToIndexed.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DiscreteToIndexed.js","sourceRoot":"","sources":["../../source/Filter/DiscreteToIndexed.ts"],"names":[],"mappings":";;;AAAA,6CAAwC;AAGxC,oFAA+E;AAC/E,8DAAyD;AAEzD,MAAa,iBAAkB,SAAQ,uBAAU;IAE7C;;OAEG;IACH,qBAAqB;QACjB,IAAI,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;QACtD,IAAI,IAAI,GAAG,cAAc,CAAC,cAAc,EAAE,CAAC;QAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5B,IAAI,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBAC1C,cAAc,CAAC,YAAY,CAAC,6BAAa,CAAC,gBAAgB,CAAC,CAAC;YAChE,CAAC;QACL,CAAC;QACD,IAAI,CAAC,0CAA0C,CAAC,IAAI,CAAC,CAAC;IAC1D,CAAC;IAED;;;;OAIG;IACH,eAAe,CAAC,QAAkB;QAC9B,IAAI,IAAI,GAAG,QAAQ,CAAC,aAAa,EAAE,CAAC;QACpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5B,IAAI,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBAC1C,IAAI,KAAK,GAAG,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACzF,QAAQ,CAAC,YAAY,CAAC,IAAI,mDAAwB,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,KAAK,EACzF,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YAC9C,CAAC;QACL,CAAC;QACD,IAAI,CAAC,oCAAoC,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC9D,CAAC;IAED;;;;OAIG;IACH,YAAY,OAAgB;QACxB,KAAK,CAAC,OAAO,CAAC,CAAC;IACnB,CAAC;CACJ;AAzCD,8CAyCC"}
|
|
@@ -1,36 +1,27 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FeatureFilter = void 0;
|
|
4
|
+
class FeatureFilter {
|
|
5
|
+
dataSet;
|
|
6
|
+
/**
|
|
7
|
+
* Constructor that sets the dataSet.
|
|
8
|
+
*
|
|
9
|
+
* @param dataSet DataSet that will bu used.
|
|
10
|
+
*/
|
|
11
|
+
constructor(dataSet) {
|
|
12
|
+
this.dataSet = dataSet;
|
|
5
13
|
}
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
/**
|
|
15
|
-
* Constructor that sets the dataSet.
|
|
16
|
-
*
|
|
17
|
-
* @param dataSet DataSet that will bu used.
|
|
18
|
-
*/
|
|
19
|
-
constructor(dataSet) {
|
|
20
|
-
this.dataSet = dataSet;
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* Feature converter for a list of instances. Using the abstract method convertInstance, each instance in the
|
|
24
|
-
* instance list will be converted.
|
|
25
|
-
*/
|
|
26
|
-
convert() {
|
|
27
|
-
let instances = this.dataSet.getInstances();
|
|
28
|
-
for (let instance of instances) {
|
|
29
|
-
this.convertInstance(instance);
|
|
30
|
-
}
|
|
31
|
-
this.convertDataDefinition();
|
|
14
|
+
/**
|
|
15
|
+
* Feature converter for a list of instances. Using the abstract method convertInstance, each instance in the
|
|
16
|
+
* instance list will be converted.
|
|
17
|
+
*/
|
|
18
|
+
convert() {
|
|
19
|
+
let instances = this.dataSet.getInstances();
|
|
20
|
+
for (let instance of instances) {
|
|
21
|
+
this.convertInstance(instance);
|
|
32
22
|
}
|
|
23
|
+
this.convertDataDefinition();
|
|
33
24
|
}
|
|
34
|
-
|
|
35
|
-
|
|
25
|
+
}
|
|
26
|
+
exports.FeatureFilter = FeatureFilter;
|
|
36
27
|
//# sourceMappingURL=FeatureFilter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FeatureFilter.js","sourceRoot":"","sources":["../../source/Filter/FeatureFilter.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"FeatureFilter.js","sourceRoot":"","sources":["../../source/Filter/FeatureFilter.ts"],"names":[],"mappings":";;;AAGA,MAAsB,aAAa;IAErB,OAAO,CAAS;IAK1B;;;;OAIG;IACH,YAAY,OAAgB;QACxB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IAC1B,CAAC;IAED;;;OAGG;IACH,OAAO;QACH,IAAI,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;QAC5C,KAAK,IAAI,QAAQ,IAAI,SAAS,EAAE,CAAC;YAC7B,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QACnC,CAAC;QACD,IAAI,CAAC,qBAAqB,EAAE,CAAC;IACjC,CAAC;CACJ;AA3BD,sCA2BC"}
|
|
@@ -1,62 +1,53 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LaryFilter = void 0;
|
|
4
|
+
const FeatureFilter_1 = require("./FeatureFilter");
|
|
5
|
+
class LaryFilter extends FeatureFilter_1.FeatureFilter {
|
|
6
|
+
attributeDistributions;
|
|
7
|
+
/**
|
|
8
|
+
* Constructor that sets the dataSet and all the attributes distributions.
|
|
9
|
+
*
|
|
10
|
+
* @param dataSet DataSet that will be used.
|
|
11
|
+
*/
|
|
12
|
+
constructor(dataSet) {
|
|
13
|
+
super(dataSet);
|
|
14
|
+
this.attributeDistributions = dataSet.getInstanceList().allAttributesDistribution();
|
|
5
15
|
}
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
super(dataSet);
|
|
22
|
-
this.attributeDistributions = dataSet.getInstanceList().allAttributesDistribution();
|
|
23
|
-
}
|
|
24
|
-
/**
|
|
25
|
-
* The removeDiscreteAttributes method takes an {@link Instance} as an input, and removes the discrete attributes from
|
|
26
|
-
* given instance.
|
|
27
|
-
*
|
|
28
|
-
* @param instance Instance to removes attributes from.
|
|
29
|
-
* @param size Size of the given instance.
|
|
30
|
-
*/
|
|
31
|
-
removeDiscreteAttributesFromInstance(instance, size) {
|
|
32
|
-
let k = 0;
|
|
33
|
-
for (let i = 0; i < size; i++) {
|
|
34
|
-
if (this.attributeDistributions[i].size > 0) {
|
|
35
|
-
instance.removeAttribute(k);
|
|
36
|
-
}
|
|
37
|
-
else {
|
|
38
|
-
k++;
|
|
39
|
-
}
|
|
16
|
+
/**
|
|
17
|
+
* The removeDiscreteAttributes method takes an {@link Instance} as an input, and removes the discrete attributes from
|
|
18
|
+
* given instance.
|
|
19
|
+
*
|
|
20
|
+
* @param instance Instance to removes attributes from.
|
|
21
|
+
* @param size Size of the given instance.
|
|
22
|
+
*/
|
|
23
|
+
removeDiscreteAttributesFromInstance(instance, size) {
|
|
24
|
+
let k = 0;
|
|
25
|
+
for (let i = 0; i < size; i++) {
|
|
26
|
+
if (this.attributeDistributions[i].size > 0) {
|
|
27
|
+
instance.removeAttribute(k);
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
k++;
|
|
40
31
|
}
|
|
41
32
|
}
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* The removeDiscreteAttributes method removes the discrete attributes from dataDefinition.
|
|
36
|
+
*
|
|
37
|
+
* @param size Size of item that attributes will be removed.
|
|
38
|
+
*/
|
|
39
|
+
removeDiscreteAttributesFromDataDefinition(size) {
|
|
40
|
+
let dataDefinition = this.dataSet.getDataDefinition();
|
|
41
|
+
let k = 0;
|
|
42
|
+
for (let i = 0; i < size; i++) {
|
|
43
|
+
if (this.attributeDistributions[i].size > 0) {
|
|
44
|
+
dataDefinition.removeAttribute(k);
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
k++;
|
|
57
48
|
}
|
|
58
49
|
}
|
|
59
50
|
}
|
|
60
|
-
|
|
61
|
-
|
|
51
|
+
}
|
|
52
|
+
exports.LaryFilter = LaryFilter;
|
|
62
53
|
//# sourceMappingURL=LaryFilter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LaryFilter.js","sourceRoot":"","sources":["../../source/Filter/LaryFilter.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"LaryFilter.js","sourceRoot":"","sources":["../../source/Filter/LaryFilter.ts"],"names":[],"mappings":";;;AAAA,mDAA8C;AAK9C,MAAsB,UAAW,SAAQ,6BAAa;IAExC,sBAAsB,CAA6B;IAE7D;;;;OAIG;IACH,YAAY,OAAgB;QACxB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,sBAAsB,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,yBAAyB,EAAE,CAAA;IACvF,CAAC;IAED;;;;;;OAMG;IACO,oCAAoC,CAAC,QAAkB,EAAE,IAAY;QAC3E,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5B,IAAI,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBAC1C,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;YAChC,CAAC;iBAAM,CAAC;gBACJ,CAAC,EAAE,CAAC;YACR,CAAC;QACL,CAAC;IACL,CAAC;IAED;;;;OAIG;IACO,0CAA0C,CAAC,IAAY;QAC7D,IAAI,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;QACtD,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5B,IAAI,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBAC1C,cAAc,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;YACtC,CAAC;iBAAM,CAAC;gBACJ,CAAC,EAAE,CAAC;YACR,CAAC;QACL,CAAC;IACL,CAAC;CACJ;AAhDD,gCAgDC"}
|
|
@@ -1,67 +1,57 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
* Converts the data definition with L-ary discrete attributes, to data definition with binary discrete attributes.
|
|
19
|
-
*/
|
|
20
|
-
convertDataDefinition() {
|
|
21
|
-
let dataDefinition = this.dataSet.getDataDefinition();
|
|
22
|
-
let size = dataDefinition.attributeCount();
|
|
23
|
-
for (let i = 0; i < size; i++) {
|
|
24
|
-
if (this.attributeDistributions[i].size > 0) {
|
|
25
|
-
for (let j = 0; j < this.attributeDistributions[i].size; j++) {
|
|
26
|
-
dataDefinition.addAttribute(AttributeType_1.AttributeType.BINARY);
|
|
27
|
-
}
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LaryToBinary = void 0;
|
|
4
|
+
const LaryFilter_1 = require("./LaryFilter");
|
|
5
|
+
const BinaryAttribute_1 = require("../Attribute/BinaryAttribute");
|
|
6
|
+
const AttributeType_1 = require("../Attribute/AttributeType");
|
|
7
|
+
class LaryToBinary extends LaryFilter_1.LaryFilter {
|
|
8
|
+
/**
|
|
9
|
+
* Converts the data definition with L-ary discrete attributes, to data definition with binary discrete attributes.
|
|
10
|
+
*/
|
|
11
|
+
convertDataDefinition() {
|
|
12
|
+
let dataDefinition = this.dataSet.getDataDefinition();
|
|
13
|
+
let size = dataDefinition.attributeCount();
|
|
14
|
+
for (let i = 0; i < size; i++) {
|
|
15
|
+
if (this.attributeDistributions[i].size > 0) {
|
|
16
|
+
for (let j = 0; j < this.attributeDistributions[i].size; j++) {
|
|
17
|
+
dataDefinition.addAttribute(AttributeType_1.AttributeType.BINARY);
|
|
28
18
|
}
|
|
29
19
|
}
|
|
30
|
-
this.removeDiscreteAttributesFromDataDefinition(size);
|
|
31
20
|
}
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
21
|
+
this.removeDiscreteAttributesFromDataDefinition(size);
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Converts discrete attributes of a single instance to binary discrete version using 1-of-L encoding. For example, if
|
|
25
|
+
* an attribute has values red, green, blue; this attribute will be converted to 3 binary attributes where
|
|
26
|
+
* red will have the value true false false, green will have the value false true false, and blue will have the value false false true.
|
|
27
|
+
*
|
|
28
|
+
* @param instance The instance to be converted.
|
|
29
|
+
*/
|
|
30
|
+
convertInstance(instance) {
|
|
31
|
+
let size = instance.attributeSize();
|
|
32
|
+
for (let i = 0; i < size; i++) {
|
|
33
|
+
if (this.attributeDistributions[i].size > 0) {
|
|
34
|
+
let index = this.attributeDistributions[i].getIndex(instance.getAttribute(i).toString());
|
|
35
|
+
for (let j = 0; j < this.attributeDistributions[i].size; j++) {
|
|
36
|
+
if (j != index) {
|
|
37
|
+
instance.addAttribute(new BinaryAttribute_1.BinaryAttribute(false));
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
instance.addAttribute(new BinaryAttribute_1.BinaryAttribute(true));
|
|
51
41
|
}
|
|
52
42
|
}
|
|
53
43
|
}
|
|
54
|
-
this.removeDiscreteAttributesFromInstance(instance, size);
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* Constructor for L-ary discrete to binary discrete filter.
|
|
58
|
-
*
|
|
59
|
-
* @param dataSet The instances whose L-ary discrete attributes will be converted to binary discrete attributes.
|
|
60
|
-
*/
|
|
61
|
-
constructor(dataSet) {
|
|
62
|
-
super(dataSet);
|
|
63
44
|
}
|
|
45
|
+
this.removeDiscreteAttributesFromInstance(instance, size);
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Constructor for L-ary discrete to binary discrete filter.
|
|
49
|
+
*
|
|
50
|
+
* @param dataSet The instances whose L-ary discrete attributes will be converted to binary discrete attributes.
|
|
51
|
+
*/
|
|
52
|
+
constructor(dataSet) {
|
|
53
|
+
super(dataSet);
|
|
64
54
|
}
|
|
65
|
-
|
|
66
|
-
|
|
55
|
+
}
|
|
56
|
+
exports.LaryToBinary = LaryToBinary;
|
|
67
57
|
//# sourceMappingURL=LaryToBinary.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LaryToBinary.js","sourceRoot":"","sources":["../../source/Filter/LaryToBinary.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"LaryToBinary.js","sourceRoot":"","sources":["../../source/Filter/LaryToBinary.ts"],"names":[],"mappings":";;;AAAA,6CAAwC;AAGxC,kEAA6D;AAC7D,8DAAyD;AAEzD,MAAa,YAAa,SAAQ,uBAAU;IAExC;;OAEG;IACH,qBAAqB;QACjB,IAAI,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;QACtD,IAAI,IAAI,GAAG,cAAc,CAAC,cAAc,EAAE,CAAC;QAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5B,IAAI,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;oBAC3D,cAAc,CAAC,YAAY,CAAC,6BAAa,CAAC,MAAM,CAAC,CAAC;gBACtD,CAAC;YACL,CAAC;QACL,CAAC;QACD,IAAI,CAAC,0CAA0C,CAAC,IAAI,CAAC,CAAC;IAC1D,CAAC;IAED;;;;;;OAMG;IACH,eAAe,CAAC,QAAkB;QAC9B,IAAI,IAAI,GAAG,QAAQ,CAAC,aAAa,EAAE,CAAC;QACpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5B,IAAI,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBAC1C,IAAI,KAAK,GAAG,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACzF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;oBAC3D,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC;wBACb,QAAQ,CAAC,YAAY,CAAC,IAAI,iCAAe,CAAC,KAAK,CAAC,CAAC,CAAC;oBACtD,CAAC;yBAAM,CAAC;wBACJ,QAAQ,CAAC,YAAY,CAAC,IAAI,iCAAe,CAAC,IAAI,CAAC,CAAC,CAAC;oBACrD,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;QACD,IAAI,CAAC,oCAAoC,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC9D,CAAC;IAED;;;;OAIG;IACH,YAAY,OAAgB;QACxB,KAAK,CAAC,OAAO,CAAC,CAAC;IACnB,CAAC;CACJ;AAlDD,oCAkDC"}
|