Top Periods

No algorithm description given

Top Periods This algorithm calls calculates the largest periodic sequences within a dataset, while also removing signal noise via the   Autocorrelate   algorithm. Table of Contents Inputs Outputs Algorithm Console Inputs All TimeSeries algorithms have a json object input, as well as array input formatting. Json Format { 
 " data ": Double[] ,
 " numOfPeriods ": Int
 }
 { 
 " data ": [ 1 , 2 , 3 , 4 , 3 , 4 , 6 , 7 , 5 , 4 , 2 , 1 , 1 ] ,
 " numOfPeriods ": 4 
 }
 data -   (required)   - The timeseries input data you wish to calculate periods from, this algorithm assumes the values are evenly spaced. ( dx(1) == dx(n) ) numOfPeriods   (optional)   - The maximum number of periods to return,   defaults to 3. Array Format There are two separate input formats for this algorithm. Basic format data : Double []
 [ 1 , 2 , 3 , 4 , 3 , 4 , 6 , 7 , 5 , 4 , 2 , 1 , 1 ]
 data -   (required)   - The timeseries input data you wish to calculate periods from, this algorithm assumes the values are evenly spaced. ( dx(1) == dx(n) ) Advanced Format [data: Double[], numOfPeriods: Int]
 [[ 1 , 2 , 3 , 4 , 3 , 4 , 6 , 7 , 5 , 4 , 2 , 1 , 1 ], 4 ]
 data -   (required)   - The timeseries input data you wish to calculate periods from, this algorithm assumes the values are evenly spaced. ( dx(1) == dx(n) ) numOfPeriods   (optional)   - The maximum number of periods to return,   defaults to 3. Outputs This algorithm has json output for json input, and array output for array input. JSON Format { 
 " topPeriods ": Int[]
 }
 { 
 " topPeriods ": [ 4 , 3 , 2 ]
 }
 topPeriods - The largest periodic sequences in descending order, the number of sequences depends on the numOfPeriods parameter. Array Format topPeriods : Double[] 
 [ 1 , 2 , 3 , 4 , 3 , 4 , 6 , 7 , 5 , 4 , 2 , 1 , 1 ]
 topPeriods - The largest periodic sequences in descending order, the number of sequences depends on the numOfPeriods parameter.

Tags
(no tags)

Cost Breakdown

0 cr
royalty per call
1 cr
usage per second
avg duration
This algorithm has permission to call other algorithms which may incur separate royalty and usage costs.

Cost Calculator

API call duration (sec)
×
API calls
=
Estimated cost
per calls
for large volume discounts
For additional details on how pricing works, see Algorithmia pricing.

Calls other algorithms

This algorithm has permission to call other algorithms. This allows an algorithm to compose sophisticated functionality using other algorithms as building blocks, however it also carries the potential of incurring additional royalty and usage costs from any algorithm that it calls.


To understand more about how algorithm permissions work, see the permissions documentation.

1. Type your input

2. See the result

Running algorithm...

3. Use this algorithm

curl -X POST -d '{{input | formatInput:"curl"}}' -H 'Content-Type: application/json' -H 'Authorization: Simple YOUR_API_KEY' https://api.algorithmia.com/v1/algo/TimeSeries/TopPeriods/0.2.0
View cURL Docs
algo auth
# Enter API Key: YOUR_API_KEY
algo run algo://TimeSeries/TopPeriods/0.2.0 -d '{{input | formatInput:"cli"}}'
View CLI Docs
import com.algorithmia.*;
import com.algorithmia.algo.*;

String input = "{{input | formatInput:"java"}}";
AlgorithmiaClient client = Algorithmia.client("YOUR_API_KEY");
Algorithm algo = client.algo("algo://TimeSeries/TopPeriods/0.2.0");
AlgoResponse result = algo.pipeJson(input);
System.out.println(result.asJsonString());
View Java Docs
import com.algorithmia._
import com.algorithmia.algo._

val input = {{input | formatInput:"scala"}}
val client = Algorithmia.client("YOUR_API_KEY")
val algo = client.algo("algo://TimeSeries/TopPeriods/0.2.0")
val result = algo.pipeJson(input)
System.out.println(result.asJsonString)
View Scala Docs
var input = {{input | formatInput:"javascript"}};
Algorithmia.client("YOUR_API_KEY")
           .algo("algo://TimeSeries/TopPeriods/0.2.0")
           .pipe(input)
           .then(function(output) {
             console.log(output);
           });
View Javascript Docs
var input = {{input | formatInput:"javascript"}};
Algorithmia.client("YOUR_API_KEY")
           .algo("algo://TimeSeries/TopPeriods/0.2.0")
           .pipe(input)
           .then(function(response) {
             console.log(response.get());
           });
View NodeJS Docs
import Algorithmia

input = {{input | formatInput:"python"}}
client = Algorithmia.client('YOUR_API_KEY')
algo = client.algo('TimeSeries/TopPeriods/0.2.0')
print algo.pipe(input)
View Python Docs
library(algorithmia)

input <- {{input | formatInput:"r"}}
client <- getAlgorithmiaClient("YOUR_API_KEY")
algo <- client$algo("TimeSeries/TopPeriods/0.2.0")
result <- algo$pipe(input)$result
print(result)
View R Docs
require 'algorithmia'

input = {{input | formatInput:"ruby"}}
client = Algorithmia.client('YOUR_API_KEY')
algo = client.algo('TimeSeries/TopPeriods/0.2.0')
puts algo.pipe(input).result
View Ruby Docs
use algorithmia::*;

let input = {{input | formatInput:"rust"}};
let client = Algorithmia::client("YOUR_API_KEY");
let algo = client.algo("TimeSeries/TopPeriods/0.2.0");
let response = algo.pipe(input);
View Rust Docs
import Algorithmia

let input = "{{input | formatInput:"swift"}}";
let client = Algorithmia.client(simpleKey: "YOUR_API_KEY")
let algo = client.algo(algoUri: "TimeSeries/TopPeriods/0.2.0") { resp, error in
  print(resp)
}
View Swift Docs
Discussion
  • {{comment.username}}