|
|
Entfernen von Zeilen/Spalten bei konkretem String |
|
DasFragezeichen |

Forum-Anfänger
|
 |
Beiträge: 32
|
 |
|
 |
Anmeldedatum: 13.12.15
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 26.01.2016, 01:15
Titel: Entfernen von Zeilen/Spalten bei konkretem String
|
 |
|
 |
|
Guten Abend,
mittlerweile habe ich mich als Anfänger bereits etwas eingehender mit Matlab beschäftigen können. Dennoch habe ich nach wie vor das Gefühl vor einem großen Berg zu stehen. Folgende Situation liegt meiner Anfrage zugrunde:
In meinem Besitz befindet sich eine Excel-Tabelle (ein Beispieldokument werde ich dieser Nachricht beifügen), welche entzerrt werden soll. Das Kriterium ist dabei, dass sobald ein bestimmtes alpha-numerisches Gefüge in einer Zelle erscheint die gesamte Zeile/Spalte entfernt wird.
Ich habe nun ein paar Verrenkungen mit strcmp/strfind/cellfun durchgeführt, konnte jedoch leider keine Veränderungen/Ergebnisse erzielen. Interessanterweise wird manches Mal jedoch auch kein Fehler ausgeworfen.
Die von mir angehängte .xls-Datei ist so gestaltet, dass der fragliche String rot markiert worden ist. Darüber hinaus wurde die gesamte Zeile gelb markiert, was deren vollständige Löschung (anhand des Suchkriteriums des rot markierten Strings) signalisieren soll.
Wie immer gilt: Vielen Dank für die Hilfe!
Viele Grüße
DasFragezeichen
Beschreibung: |
|
 Download |
Dateiname: |
Datensatz.xls |
Dateigröße: |
43.5 KB |
Heruntergeladen: |
347 mal |
|
|
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 26.01.2016, 19:01
Titel: Re: Entfernen von Zeilen/Spalten bei konkretem String
|
 |
Hallo DasFragezeichen,
Bitte poste den bisherigen Code, weil man sich dann das Einlesen des Excel-Files etc sparen kann. Zudem ist es immer leichter Fehler im Code zu finden, als ihn komplett neu zu schreiben.
Kannst Du das Suchkriterium mit Worten beschreiben?
Gruß, Jan
|
|
|
DasFragezeichen |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 32
|
 |
|
 |
Anmeldedatum: 13.12.15
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 27.01.2016, 01:43
Titel:
|
 |
Hallo Jan,
vielen Dank für Deine Nachricht.
Das Suchkriterium ist hier der Begriff Mieteinnahmen, als ein Bestandteil einiger der Zellen der ersten Spalte.
Zunächst habe ich Folgendes ausprobiert:
Dieser (der letzte) Ausdruck hat jedoch nach meinem Eindruck nichts bewirkt nicht einmal eine Fehlermeldung ausgespuckt.
Anschließend habe ich folgende Variante nachgebaut:
Auch diese Variante rief keinen Fehler (nach Anpassung der zu verknüpfenden Variablen) hervor. Der Befehl führte jedoch - nach meinem bisherigen Verständnis - auch zu keinem sichtbaren Ergebnis.
Eine dritte Variante war eine Konstruktion mit cellfun. Diese Version war jedoch in sich fehlerhaft, weshalb ich sie wieder verworfen habe und nicht mehr angemessen rekonstruieren kann.
Viele Grüße
DasFragezeichen
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 27.01.2016, 11:23
Titel:
|
 |
Hallo DasFragezeichen,
Der Code entfernt alle Zeilen, in denen in der erste Spalte der String "Mieteinnahmen" steht. Das steht aber nirgendwo. Ich finde nur "Objekt 2 - Mieteinnahmen". Das ist aber eindeutig nicht der string "Mieteinnahmen".
Du brauchst entweder ein Vergleich mit dem rechten Teil des Strings, siehe http://www.mathworks.com/matlabcent.....leexchange/27032-strncmpr. Oder Du suchst nach Strings, die irgendwo den gesuchten Teil enthalten:
Wenn du Probleme mit einem Befehl hast, hier
strcmp
, ist das Lesen der Dokumentation immer eine gute Idee.
Gruß, Jan
|
|
|
DasFragezeichen |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 32
|
 |
|
 |
Anmeldedatum: 13.12.15
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 27.01.2016, 23:29
Titel:
|
 |
Besten Dank für Deine Hilfe sowie Deine Hinweise, Jan!
Der von dir bereitgestellte Code passt nahezu vollständig. Als kleine Modifikation habe ich lediglich cellfun negiert. Zudem habe ich den Betrachtungsbereich der raw-Variable etwas eingeschränkt. Ansonsten wären die Prüfwerte 0-1 verschoben und damit nicht korrekt.
Viele Grüße
DasFragezeichen
|
|
|
|
|
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.
|
|