Ich habe derzeit ein 4x3500 Zellenfeld. Die erste Zeile ist eine einzelne Zahl, die zweite Zeile ist eine einzelne Zeichenfolge, die dritte und vierte Zeile sind ebenfalls einzelne Zahlen.Auswählen aller Spalten in einem Zellenfeld, die einen bestimmten Wert in der ersten Zeile enthalten?
Ex:
1 1 2 3 3 4 5 5 5 6
hi no ya he ........ % you get the idea
28 34 18 0 3 ......
55 2 4 42 24 .....
Ich möchte in der Lage sein, alle Spalten auswählen, die einen bestimmten Wert in der ersten Reihe hat. dh wenn ich wollte ‚1‘ als erste Zeile Wert, es
1 1
hi no
28 34
55 2
Dann sortieren Ich möchte auf der Grundlage der zweiten Zeile der Zeichenfolge zurückkehren würde. dh wenn ich have'hi‘wollte, wäre es zurück:
1
hi
28
55
ich versucht habe zu tun:
variable = cellArray{:,find(cellArray{1,:} == 1)}
aber ich erhalte:
Error using find
Too many input arguments.
oder
Error using ==
Too many input arguments.
Jede Hilfe wäre sehr willkommen! :)
Ich habe MATLAB nicht, um dies zu testen. Sie können einen Vektor aus der ersten Zeile erstellen, indem Sie 'vec = [cellArray {1,:}]' 'ausführen. Nun, mach 'ind = vec == 1'. Sie wissen nun, welche Spalten Sie aus Ihrem Zellenfeld extrahieren möchten. Funktioniert das dann: 'cellArray {:, ind}'? –