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

Teilbereich aus Vektor suchen

 

skittles
Forum-Anfänger

Forum-Anfänger


Beiträge: 36
Anmeldedatum: 16.07.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.10.2008, 16:36     Titel: Teilbereich aus Vektor suchen
  Antworten mit Zitat      
Hallo,

folgende Problematik:

Ich habe einen logischen Vektor (0 und 1). In diesem Vektor kommt die 1 60x hintereinander vor. Ich möchte nun die Anfangszeile finden, in welcher die erste der 60 1en steht! Es stehen auch sonst vereinzelt 1en, also die 60 Stk. sind nicht die einzigen im Vektor!

Code:

for k=1:(length(logischerVektor)-60)
    variable1 = zeros;
    for m=k:(60+k)
        variable1(m) = logischerVektor(k+m);
    end
    if mean(variable1) == 1
        startzeile = k-60;
    end
end
 


Der Code soll ein 60 Werte breites Intervall über den logischen Vektor schieben, bis dieses Intervall mit dem logischen Vektor übersinstimmt!

Besten Dank mal!

Gruß Skittles
Private Nachricht senden Benutzer-Profile anzeigen


Janvi
Forum-Anfänger

Forum-Anfänger


Beiträge: 28
Anmeldedatum: 20.05.08
Wohnort: Rom
Version: R2007a
     Beitrag Verfasst am: 28.10.2008, 18:47     Titel:
  Antworten mit Zitat      
indexstelle = find (suchmuster);
Private Nachricht senden Benutzer-Profile anzeigen
 
steffi
Forum-Century

Forum-Century



Beiträge: 149
Anmeldedatum: 07.03.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.10.2008, 18:49     Titel:
  Antworten mit Zitat      
So:

Code:

Vector=logischerVektor;
rev_v=[ones(1,60)];
for i=1:length(Vector)-length(rev_v)
    if isequal(Vector(i:i+length(rev_v)-1),rev_v)
        A=i;
        break
    end
end
disp(A)


Dieser Code sollte jetzt abbrechen, wenn der 60er-Vektor gefunden wurde, kann man aber ja anpassen, wenn nötig!
Die letzte Zeile gibt dir den Anfangswert aus. Kannst du dann auch ggf. anpassen.
_________________

Wenn ich bei der Arbeit mit Computern eins gelernt habe dann das ich einem Computer nur soweit traue wie ich ihn werfen kann.
Private Nachricht senden Benutzer-Profile anzeigen
 
skittles
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 36
Anmeldedatum: 16.07.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.10.2008, 21:30     Titel:
  Antworten mit Zitat      
Super funktioniert 1a!

Besten Dank!
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.