matheraum.de
Raum für Mathematik
Offene Informations- und Nachhilfegemeinschaft

Für Schüler, Studenten, Lehrer, Mathematik-Interessierte.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Schulmathe
  Status Primarstufe
  Status Mathe Klassen 5-7
  Status Mathe Klassen 8-10
  Status Oberstufenmathe
    Status Schul-Analysis
    Status Lin. Algebra/Vektor
    Status Stochastik
    Status Abivorbereitung
  Status Mathe-Wettbewerbe
    Status Bundeswettb. Mathe
    Status Deutsche MO
    Status Internationale MO
    Status MO andere Länder
    Status Känguru
  Status Sonstiges

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
StartseiteMatheForenMatlabMatrix aus .txt
Foren für weitere Schulfächer findest Du auf www.vorhilfe.de z.B. Informatik • Physik • Technik • Biologie • Chemie
Forum "Matlab" - Matrix aus .txt
Matrix aus .txt < Matlab < Mathe-Software < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Matlab"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Matrix aus .txt: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 13:14 Sa 04.04.2009
Autor: webbi

Hallo!

Ich habe ein Problem beim Einlesen einer txt. --> eine Beispieldatei ist beigefügt.
[a]Datei-Anhang

Ich möchte alle Werte nach dem Header (ab Zeile 22) in eine Matrix speichern. Problem: Ich möchte dabei auf die erste Spalte(in welcher nichts steht) sowie alle Spalten nach der 25. verzichten.
Die Matrix soll am Ende nur noch alle Messwerte enthalten.

Ich habe es folgendermaßen probiert:

fid=fopen('Beipiel.txt','r');
M=textscan(fid,'%f','headerLines',21);
M=cell2mat(M)


Es ist noch sehr unvollständig, leider komme ich aber nicht wesentlich weiter...

Es müsste eigentlich sehr einfach zu lösen sein, leider fehlt mir die nötige Erfahrung mit Matlab. :(
Über Hilfe bin ich sehr dankbar!

Grüße, webbi


Ich habe diese Frage auch in folgenden Foren auf anderen Internetseiten gestellt:
[http://www.gomatlab.de/viewtopic,p,20245.html#20245]

Dateianhänge:
Anhang Nr. 1 (Typ: txt) [nicht öffentlich]
        
Bezug
Matrix aus .txt: Antwort
Status: (Antwort) fertig Status 
Datum: 17:54 So 05.04.2009
Autor: Martin243

Hallo,

da einige Zeilen länger sind als andere, würde ich eine etwas umständlichere Methode wählen, die aber nicht kompliziert ist. Hier wird einfach jede Zeile einzeln verarbeitet:
M=[]; fid=fopen('Beispiel.txt','r');
for i=1:21, inLine=fgetl(fid), end; % Zeilen überspringen
while ~feof(fid), % solange Datei nicht zuende
  inLine=fgetl(fid); % lies Zeile ein
  inNum=str2num(inLine); % interptetiere die Zahlen
  M=[M; inNum(1:21)]; % hänge die ersten 21 an die Matrix
end;

Ich hoffe, das hilft dir erstmal.


Gruß
Martin

Bezug
                
Bezug
Matrix aus .txt: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 22:50 So 05.04.2009
Autor: webbi

Hallo!
Vielen Dank schonmal für deine Hilfe!!

Bei deinem Lösungsvorschlag erhalte ich aber leider genau das Ergebnis, dass ich garnicht brauchen kann. Anstatt die ersten Zeilen zu überspringen, werden jetzt als Ergebnis für [M] genau die ersten 21 Zeilen gesetzt.
Ich möchte ja am Ende nur eine Matrix, in der die Messwerte stehen. Besonders interessiert mich eine Lösung, um ab der 21. Zeile die 1. und die letzten Spalten zu ignorieren.

Viele Grüße,
webbi


Juhu!
Mit etwas ausprobieren, habe ich es geschafft!

M=[]; fid=fopen('Beispiel.txt','r');
for i=1:21, fgetl(fid); end; % Zeilen überspringen
while ~feof(fid), % solange Datei nicht zuende
  inLine=fgetl(fid); % lies Zeile ein
  inNum=str2num(inLine); % interptetiere die Zahlen
  M=[M; inNum(1:24)]; % hänge die ersten 24 Spalten an die Matrix


end;

Vielen Dank!!

Leider wusste ich nicht wie ich die Frage löschen kann... ;)

Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Matlab"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.schulmatheforum.de
[ Startseite | Forum | Wissen | Kurse | Mitglieder | Team | Impressum ]