Ich habe eine Excel Tabelle bekommen mit vielen Einträgen (2000x80).
Nun muss ich die Zeile finden, die am ähnlichsten der InputZeile ist.
Ich habe hier eine kleinere Beispiel-Tabelle (20x5) erstellt.
Mit dem Code habe ich auch angefangen und vergleiche zunächst den InputWertA mit allen anderen Werten in Spalte A. Wenn A übereinstimmt soll in die Zelle an der Stelle die Zeilennummer geschrieben werden (Wert von i). Das gleiche mache ich dann für die Spalte mit Wert B. Am Ende vergleiche ich die beiden Spalten mit ismember und sehe wo in der Zelle Wert stehen habe ich eine Übereinstimmung.
Nun ich weiß nicht genau wie ich da weitermachen soll, es ist warscheinlich sehr Rechenleistungsintensiv das für die richtige ExcelDatei mit 2000 Zeilen und 80 Spalten anzuwenden.
Außerdem sollte das automatisch gehen und mir anzeigen welche die "ähnlichste" Zeile ist, bei der aktuellen "Lösung" muss ich theoretisch in die Tabelle gucken.
Habt Ihr da andere Lösungsansätze?
Code:
tic [num,txt,raw] = xlsread('Beispiel.xlsx');
[nr,nc]=size(raw);
max = nr; %Anzahl der Zeilen in der Liste...Abfrage zum Herausfinden?
InputWertB = 'B1C1';
InputWertA = 'A1';
Array1 = zeros(nr,5); %Arrays vorerstellen (5 Spalten - Bsp)
Array2 = zeros(nr,5);
Danke für die schnelle Antwort.
Jede Zeile hat quasi eine Bewertungsstufe (1-5), die ich jz nicht in der Beispieltabelle eingefügt habe.
Die Zeilen haben alle Ähnlichkeiten. Ich muss mit der neuen Zeile schauen, welche von den alten Zeilen die meisten "Spaltenwerte" gleich hat. Also dadurch kann ich die Bewertungsstufe für die neue Zeile von den alten ableiten.
Wie viel Gewichtung ein Spaltenwert hat ist noch nicht genau definiert.
Ich habe mir vielleicht überlegt den verschiedenen Spaltenwerten bei Übereistimmung verschiedene Wert zuzuweisen wie z.B.: für WertA gebe ich 5 Punkte und für WertB 2, soll die Gewichtung realisieren. Die Zeile die dann die meisten Punkte hat ist dann quasi die Ähnlichste.
Dein Ansatz gefällt mir schon mal, schaut auf jeden Fall schicker aus als mein Codeblock.
Danke,
robby
Einstellungen und Berechtigungen
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.