1
0
mirror of https://github.com/sjwhitworth/golearn.git synced 2025-04-28 13:48:56 +08:00
golearn/examples/knnregressor_random.go

31 lines
787 B
Go
Raw Normal View History

2014-01-05 00:23:31 +00:00
package main
import (
mat "github.com/skelterjohn/go.matrix"
base "golearn/base"
util "golearn/utilities"
knnclass "golearn/knn"
"fmt"
)
func main(){
//Parses the infamous Iris data.
cols, rows, _, labels, data := base.ParseCsv("datasets/randomdata.csv", 2, []int{0,1})
newlabels := util.ConvertLabelsToFloat(labels)
//Initialises a new KNN classifier
knn := knnclass.KNNRegressor{}
knn.New("Testing", newlabels, data, rows, cols)
for {
//Creates a random array of N float64s between 0 and Y
randArray := util.RandomArray(2, 100)
//Initialises a vector with this array
random := mat.MakeDenseMatrix(randArray,1,2)
//Calculates the Euclidean distance and returns the most popular label
outcome, _ := knn.Predict(random, 3)
fmt.Println(outcome)
}
}