Skip to content

A Go package for the Kneedle algorithm which can be used to detect a knee in a list of values.

License

Notifications You must be signed in to change notification settings

jagandecapri/kneedle

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Kneedle-Go

Description

A Go package for the Kneedle algorithm which can be used to detect a knee in a list of values. This package is adapted into Go from the Java implementation at github.com/lukehb/137-stopmove.

Installing

Use go get github.com/jagandecapri/kneedle

Example use

	testData := [][]float64{
	{0,0},
	{0.1, 0.55},
	{0.2, 0.75},
	{0.35, 0.825},
	{0.45, 0.875},
	{0.55, 0.9},
	{0.675, 0.925},
	{0.775, 0.95},
	{0.875, 0.975},
	{1,1},
	}
	
    	kneePoints, _ := kneedle.Run(testData, 1, 1, false)
    
    	for _, kneePoint := range kneePoints{
        	fmt.Println("Knee point:", kneePoint)
    	}

References

Ville Satopää, Jeannie Albrecht, David Irwin, Barath Raghavan. Finding a "Kneedle" in a Haystack: Detecting Knee Points in System Behavior. 31st International Conference on Distributed Computing Systems Workshops, pp. 166-171, Minneapolis, Minnesota, USA, June 2011.

Authors

See also the list of contributors who participated in this project.

License

This project is licensed under the MIT License - see the LICENSE file for details

About

A Go package for the Kneedle algorithm which can be used to detect a knee in a list of values.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages