WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Mit ausgewählten Werten einer Matrix rechnen

 

Lars_1991
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 62
Anmeldedatum: 04.11.19
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.12.2019, 01:13     Titel: Mit ausgewählten Werten einer Matrix rechnen
  Antworten mit Zitat      
Hallo liebes Forum,

ich habe eine Matrix mit 5236 Werten, ich möchte aber nur die Werte von 2619 bis 5236 (zweiteHälfte) für meine weitere Untersuchung nutzen. Leider klappt es nicht, wie ich es mir gedacht habe. der Code ist angefügt.

Code:
Fehlerrechnung
% Abstand zwischen exakten- und Vorhersagepunkt

P_eW = M_eW([2619 5236],[1 2])
P_S = M_Schaetzung([1 2],[2619 5236])'

for ([2619 5236]) = 2619:length(P_S)    
   
       Abstand = sqrt((P_eW([2619 5236],1)-P_S([2619 5236],1))^2 + (P_eW([2619 5236],2)-P_S([2619 5236],2))^2);
       s_A(:,[2619 5236]) = Abstand;
end

% Matrix mit den Abständen jedes Punktes zu den exakten Punkten
s_Abstand = s_A(:,:)'

% maximaler Abstand
[max_Abstand Position] =max(s_A)

% Werte die kleiner als 0.2 m sind (Toleranz)
s_A_02 = s_Abstand(s_Abstand < 0.2);
l_A_02 = length(s_A_02);

% Werte die kleiner als 0.4 m sind (Toleranz)
s_A_04 = s_Abstand(s_Abstand < 0.4);
l_A_04 = length(s_A_04);

% Prozentualer Anteil der Werte, die innerhalb des Toleranzkreises liegen
Prozent_k02 = (l_A_02 * 100) / [2619 5236]
Mittelwert_Abstand = mean(s_Abstand)

% Prozentualer Anteil der Werte, die innerhalb des Toleranzkreises liegen
Prozent_k04 = (l_A_04 * 100) / n

Dort wo jetzt [2619 5236] steht, stand vorher n und n=5236.

Vllt hilft mir ja jemand, würde mich freuen!

Liebe Grüße
Lars
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.492
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 30.12.2019, 11:03     Titel:
  Antworten mit Zitat      
Hallo,

Zitat:
Leider klappt es nicht, wie ich es mir gedacht habe.

Und was heißt das? Bekommst du eine Fehlermeldung, und wenn ja welche?
Ein unerwartetes Verhalten, und wenn ja inwiefern?

Diese Zeile hier ist jedenfalls Unsinn:
Code:
for ([2619 5236]) = 2619:length(P_S)


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 ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
Lars_1991
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 62
Anmeldedatum: 04.11.19
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 31.12.2019, 16:37     Titel:
  Antworten mit Zitat      
Hallo Harald,

ich habe es hinbekommen Smile
Nun eine andere Frage, die ich gestellt habe.
https://www.gomatlab.de/variablen-speichern-t48795.html

Hast du da eventuell einen Tipp oder kannst mir sagen wie das geht?

Liebe Grüße und einen guten Rutsch Wink

Lars
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.492
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 01.01.2020, 19:51     Titel:
  Antworten mit Zitat      
Hallo,

habe dort geantwortet.
Wenn du etwas hinbekommen hast, schreibe bitte auch dazu wie. Dann haben auch Leute was davon, die später auf die Frage stoßen.

Gutes neues Jahr,
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 ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
Lars_1991
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 62
Anmeldedatum: 04.11.19
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 01.01.2020, 19:58     Titel:
  Antworten mit Zitat      
Hallo Harald,

meine Lösung zu diesem Problem sieht folgendermaßen aus:

Code:
% Abstand zwischen exakten- und Vorhersagepunkt
n1 = 2618;

P_eW2619_5236 = M_eW([2619:5236],[1 2]);
P_S = M_Schaetzung([1 2],[2619:5236])';

for n1 = 1:length(P_S)    
   
       Abstand = sqrt((P_eW2619_5236(n1,1)-P_S(n1,1))^2 + (P_eW2619_5236(n1,2)-P_S(n1,2))^2);
       s_A1(:,n1) = Abstand;
end

% Matrix mit den Abständen jedes Punktes zu den exakten Punkten
s_Abstand = s_A1(:,:)';

% maximaler Abstand
[max_Abstand Position] =max(s_A1)

% Werte die kleiner als 0.2 m sind (Toleranz)
s_A_02 = s_Abstand(s_Abstand < 0.2);
l_A_02 = length(s_A_02);

% Werte die kleiner als 0.4 m sind (Toleranz)
s_A_04 = s_Abstand(s_Abstand < 0.4);
l_A_04 = length(s_A_04);

% Prozentualer Anteil der Werte, die innerhalb des Toleranzkreises liegen
Prozent_k02 = (l_A_02 * 100) / n1
Mittelwert_Abstand = mean(s_Abstand)

% Prozentualer Anteil der Werte, die innerhalb des Toleranzkreises liegen
Prozent_k04 = (l_A_04 * 100) / n1


Liebe Grüße
Lars
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 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.