|
|
Bestimmen einer Vektorposition |
|
roadrunner |
Forum-Newbie
|
|
Beiträge: 5
|
|
|
|
Anmeldedatum: 01.02.11
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 01.02.2011, 20:24
Titel: Bestimmen einer Vektorposition
|
|
Hallo, ich stolpere wohl gerade über einen Anfängerfehler:
Das Ergebnis ist ans = 0, was falsch ist.
Mit einem einfachem Besipiel funktioniert es aber.
Die Daten sind ein Vektor der size (1 33488)
Ich stehe momentan auf dem Schlauch, kann mir jemand weiterhelfen.
Vielen Dank, gruß
Beschreibung: |
|
Download |
Dateiname: |
Daten.zip |
Dateigröße: |
5.54 MB |
Heruntergeladen: |
602 mal |
|
|
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 01.02.2011, 21:42
Titel:
|
|
|
|
|
Hallo,
was wäre denn so ein einfaches Beispiel, wo's "funktioniert"?
index ist in deinem Fall ein logischer Vektor aus 0 und 1; 1 steht für Erfüllung der Bedingung, 0 für Verletzung der Bedingung.
Du schaust dir die erste Zeile deiner Daten an, folglich ist index ein Zeilenvektor.
Aus diesem holst du dann die erste Spalte, mit anderen Worten also das erste Element. Wenn das erste Element deiner Daten also nicht zufällig 62.8993 ist, dann ist das Ergebnis vollkommen richtig.
Ich gehe vielmehr davon aus, dass das Ergebnis nicht dem entspricht, was du wolltest. Da du aber nicht sagst, was du erreichen willst, kann ich dir zunächst nur erklären, was dein Code macht.
Bleibt anzufügen, dass ich grundsätzlich von Tests auf Gleichheit abrate, sofern es sich in irgendeiner Form um errechnete oder mit minimalen Ungenauigkeiten behaftete Daten handelt. Besser als a == b ist
mit einer nahezu beliebigen Toleranz, z.B. 1e-10.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
roadrunner |
Themenstarter
Forum-Newbie
|
|
Beiträge: 5
|
|
|
|
Anmeldedatum: 01.02.11
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 01.02.2011, 22:08
Titel:
|
|
Hallo,
vielen Dank schon einmal für den Hinweis.
Ich habe vor, die Position eines bestimmten Werts im Vektor zu bestimmen, um darüber auf den Wert an gleicher Position in einer zweiten Datenreihe zu schliessen.
Hier ein einfaches Bsp zur Erklärung:
Ergebnis = 21.
hier funktionierts;-).
Danke
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 01.02.2011, 22:17
Titel:
|
|
Hallo,
in deiner anderen Anwendung verwendest du dann index falsch. Und da ich nicht weiß, was in deinem Fall die zweite Datenreihe ist, auf die du dich beziehen willst, ist es auch da schwierig, dir weiterzuhelfen. Vielleicht das?
Wenn nicht, versuch mal folgendes:
Allerdings ist dein Code so nur für Zeilenvektoren geeignet.
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
roadrunner |
Themenstarter
Forum-Newbie
|
|
Beiträge: 5
|
|
|
|
Anmeldedatum: 01.02.11
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 01.02.2011, 22:31
Titel:
|
|
Hallo Harald,
die zweite Datenreihe soll "b.Time.data" sein, auch ein Zeilenvektor, mit der gleichen Anzahl von Werten.
Die Aufgabe ist, herauszufinden zu welcher Zeit t (b.Time.data) die Geschwindigkeit (b.Car_v.data) gleich 50km/h ist.
Das ist mein bisheriger Versuch:
ich frage mich jetzt allerdings wie ich das "abs(a-b) < Tol" einbauen könnte, denn die genaue Zuordnung über "== 50" funktioniert sicherlich nicht, wie du schon geschrieben hattest.
Grüße
Torsten
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.495
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 01.02.2011, 22:54
Titel:
|
|
Hallo,
jetzt kommen wir der Sache näher. Vorschlag:
Grüße,
Harald
_________________
1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
|
|
|
roadrunner |
Themenstarter
Forum-Newbie
|
|
Beiträge: 5
|
|
|
|
Anmeldedatum: 01.02.11
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 02.02.2011, 08:19
Titel:
|
|
das ist es.
Harald, besten Dank!
gruß Torsten
|
|
|
roadrunner |
Themenstarter
Forum-Newbie
|
|
Beiträge: 5
|
|
|
|
Anmeldedatum: 01.02.11
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 02.02.2011, 08:19
Titel:
|
|
|
|
|
|
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
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2025
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
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.
|
|