So finden eine Zelle in Matlab

January 1

So finden eine Zelle in Matlab

Stoppen Sie, reißt Ihr Haar heraus versuchen, eine Zelle in Matlab zu finden. Die Matlab "suchen"-Funktion funktioniert nicht auf Zelle Arrays, ebenso wenig logische Indizierung. Stattdessen können Sie eine "for"-Schleife durch die Zelle Array, eine Zelle zu einer Zeit blicken. Überprüfen Sie jede Zelle mit einer "if"-Anweisung oder zwei zu sehen, ob es das ist, was Sie suchen. Jetzt finden Sie die gewünschten Daten in einem Array des Matlab-Zelle.

Anweisungen

1 Erstellen Sie einen Standard "für" Schleife. Der Zähler läuft von 1 auf die Anzahl der Elemente im Array Zelle. Beispielsweise wenn C Ihr Array zweidimensional Zelle ist, ist die Anzahl der Elemente in C gleich der Anzahl der Zeilen multipliziert mit der Anzahl der Spalten. Verwenden Sie die Funktion "Größe", um die Anzahl der Elemente zu erhalten. Ihr "for"-Schleife könnte wie folgt aussehen:

für n = 1: (size(C,1)*size(C,2))

[Text der "for" Schleife]

Ende.

2 Erstellen Sie eine "if"-Anweisung mit einem logischen Test, die nur für die Zelle oder Zellen, die Sie finden möchten. Platzieren Sie es im Körper von der "for" Schleife, so dass der Test auf jedes Element des Arrays Zelle angewendet wird.

Denken Sie daran, dass eine Zelle Array numerische Arrays, logische Arrays, Zeichenfolgen, Struktur-Arrays und andere Datentypen enthalten kann. Stellen Sie sicher, dass Ihre logische Test einen bestimmten Datentyp nicht übernimmt, wenn Sie wissen, dass Ihre Zelle Array nur einen Datentyp enthält. Vielleicht möchten eine zweite hinzufügen "Wenn"-Anweisung, dass der Datentyp suchen.

Beispielsweise wenn Sie auf der Suche nach der Zeichenfolge "Ja", zuerst testen Sie um festzustellen, ob die Zelle einen String enthält. Wenn ja, zu testen, ob die Zeichenfolge entspricht "Ja." Die "if"-Anweisung in Ihrem Schleifenrumpf "für" könnte wie folgt aussehen:

Wenn strcmp(class(C{n}), 'String')

if strcmp(C{n}, 'Yes')

[body of "if" statement]

end

Ende.

3 Platzieren Sie die Aktion, die Sie nehmen, wenn Sie die Zelle in den Körper von Ihr "if"-Anweisung gefunden haben möchten. Vielleicht möchten den Index dieser Zelle zu speichern, Sie nennen es später, der Inhalt der Zelle in eine andere Variable speichern oder etwas zum Inhalt Zelle tun können. Dieser Teil wird nach Ihren spezifischen Bedürfnissen variieren.

4 Speichern Sie Ihre Matlab-Skript, und führen Sie es. Sie haben jetzt Ihre Zelle gefunden.

Tipps & Warnungen

  • Wenn Ihre Zelle-Reihe "C" nicht benannt ist, ersetzen Sie einfach "C" mit dem Namen des Arrays.
  • Wenn Ihr Skript zum erste Mal nicht, wenn Sie es ausführen funktioniert, verwenden Sie "Debug" Matlabs-Funktion durch sie Schritt für Schritt, den Fehler zu finden gehen.