Skip to content

Instantly share code, notes, and snippets.

@mmerce
Created June 21, 2018 08:48
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mmerce/090c351abbe4fd0752bfcb714515bb0e to your computer and use it in GitHub Desktop.
Save mmerce/090c351abbe4fd0752bfcb714515bb0e to your computer and use it in GitHub Desktop.
Creating a clean anomaly detector
/*
* Creating a clean anomaly detector
*/
var bigml = require('bigml');
// Simplest anomaly detector
new bigml.Source().create('sales.csv', undefined, function(error, source) {
new bigml.Dataset().create(source, undefined, function(error, dataset) {
new bigml.Anomaly().create(dataset, undefined, function(error, anomaly) {
new bigml.Dataset().get(dataset, true, function(error, dataset) {
// asssign score to each instance
var args = {output_dataset: true,
output_fields: dataset.object['input_fields']};
new bigml.BatchAnomalyScore().create(anomaly, dataset, args, function (error, batchAnomalyScore) {
new bigml.BatchAnomalyScore().get(batchAnomalyScore, true, function(error, batchAnomalyScore) {
var generatedDataset = batchAnomalyScore.object['output_dataset_resource'];
var excludeExpression = {excluded_fields: ["score"],
json_filter: ["<", ["f", "score"], 0.6]};
new bigml.Dataset().create(generatedDataset, excludeExpression, function(error, cleanDataset) {
var anomalyConnection = new bigml.Anomaly();
var cleanAnomalyDetector = anomalyConnection.create(cleanDataset, undefined, function(error, cleanAnomalyDetector) {
anomalyConnection.get(cleanAnomalyDetector, true, function(error, data) {
console.log("The clean anomaly detector was created. It's ID is: ", cleanAnomalyDetector.resource);
});
});
});
});
});
});
});
});
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment