Lassen Sie mich zunächst sagen, ich habe keine Erfahrung mit R, KNN oder Datenwissenschaft im Allgemeinen. Ich habe vor kurzem Kaggle gefunden und habe mit dem Digit Recognition Wettbewerb/Tutorial herum gespielt.Wie sieht man die nächsten Nachbarn in R?
In diesem Tutorial sie einige Beispiel-Code bieten Ihnen eine grundlegende Vorlage zu erhalten begonnen:
# makes the KNN submission
library(FNN)
train <- read.csv("c:/Development/data/digits/train.csv", header=TRUE)
test <- read.csv("c:/Development/data/digits/test.csv", header=TRUE)
labels <- train[,1]
train <- train[,-1]
results <- (0:9)[knn(train, test, labels, k = 10, algorithm="cover_tree")]
write(results, file="knn_benchmark.csv", ncolumns=1)
Meine Fragen sind:
- Wie kann ich die nächsten Nachbarn anzeigen, die für die ausgewählt wurden, a bestimmte Testzeile?
- Wie kann ich ändern, welche dieser zehn ausgewählt ist für meine
results
?
Diese Fragen können zu weit gefasst sein. Wenn ja, würde ich alle Links begrüßen, die mich auf den richtigen Weg bringen könnten.
Es ist sehr möglich, dass ich etwas gesagt habe, das hier keinen Sinn ergibt. Wenn dies der Fall ist, korrigiere mich bitte.
Wunderbare Antwort, danke Sie! Ich hatte ein paar Fragen. Jedes Mal, wenn ich versuche, Indizes zu drucken, gibt es null zurück, sollte ich etwas anderes als Ihr Beispiel machen? Kannst du irgendwelche Ressourcen empfehlen, um mehr über das Erstellen eines benutzerdefinierten Gewichtungsschemas zu erfahren? Oder Beispiele von jemandem, der einen schafft, den ich mir anschauen kann? –
Das ist sehr seltsam.Was bekommst du, wenn du 'print (k)' machst? Wie bei anderen Gewichtungsschemata - Sie hätten genauso viel Glück, wie ich bei Google nach dem Begriff "KNN Weighted" suchen würde. Aber ich schreibe ein bisschen mehr über die Gewichtung meiner Antwort. –
Ok, also nur um zu verdeutlichen, dass ich 'Ergebnisse' anstelle von' k' verwende. Ich nehme an, das macht keinen Unterschied, aber ich dachte mir, ich sollte das einfach rauswerfen. Wenn ich 'print (Ergebnisse) 'drucke, werden die 1000 Elemente ausgedruckt, die schließlich in meine CSV-Datei geschrieben werden. –