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

count

 

jojo

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 01.04.2008, 14:09     Titel: count
  Antworten mit Zitat      
hallo

gibt es in matlab eine count funktion die die zeilen einer .dat datei zählen kann.

wäre für jede hilfe dankebar

joe


Titus
Forum-Meister

Forum-Meister


Beiträge: 871
Anmeldedatum: 19.07.07
Wohnort: Aachen
Version: ---
     Beitrag Verfasst am: 01.04.2008, 14:14     Titel:
  Antworten mit Zitat      
Hallo,
ich kenne keine. Bei Dateien, die nicht gerade in die dreistellig MB groß sind, funktioniert z.B. folgende Routine:
Code:
fid = fopen('meinDatei.txt', 'rt');
x = fread(fid, inf, 'uchar'); % lese komplett als string ein
fclose(fid);
anzahlZeilenumbrueche = sum(x==10) % umbruch = char(10)
 

Nicht wirklich schön aber funktioniert.

Titus
Private Nachricht senden Benutzer-Profile anzeigen
 
nschlange
Ehrenmitglied

Ehrenmitglied



Beiträge: 1.320
Anmeldedatum: 06.09.07
Wohnort: NRW
Version: R2007b
     Beitrag Verfasst am: 01.04.2008, 14:48     Titel:
  Antworten mit Zitat      
Unter Unix/Linux gäbe es dafür 'wc -l'. Vielleicht gibt es ja auch eine Windows-Portierung.
Falls man feste Zeilenlängen hat könnte man die Zeilenanzahl ja vielleicht auch aus der Dateigröße bestimmen.
_________________

Viele Grüße
nschlange

"Chuck Norris ejakuliert fluessigen Stahl!"
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
outsider
Forum-Meister

Forum-Meister


Beiträge: 806
Anmeldedatum: 03.09.07
Wohnort: München
Version: R2012b
     Beitrag Verfasst am: 01.04.2008, 15:41     Titel:
  Antworten mit Zitat      
Ich weiss zwar nicht wozu Du es brauchst, aber für den Fall wenn Du anschliessend eine FOR-Schleife aufzustellen willst, die dann die Zeilen einliest und auswertet, gibt es eine bessere Lösung.

Schaue in der Hilfe zum Befehl FGETL wie das dort realisiert wurde.
>> help fgetl


MfG
Private Nachricht senden Benutzer-Profile anzeigen
 
Titus
Forum-Meister

Forum-Meister


Beiträge: 871
Anmeldedatum: 19.07.07
Wohnort: Aachen
Version: ---
     Beitrag Verfasst am: 01.04.2008, 15:48     Titel:
  Antworten mit Zitat      
Hallo,
weitere Alternative (wo wir schon bei fgetl sind) ist textread:
Code:
anzahlZeilen = length(textread('meineDatei.txt', '%s'))


Wink

Titus
Private Nachricht senden Benutzer-Profile anzeigen
 
outsider
Forum-Meister

Forum-Meister


Beiträge: 806
Anmeldedatum: 03.09.07
Wohnort: München
Version: R2012b
     Beitrag Verfasst am: 01.04.2008, 16:03     Titel:
  Antworten mit Zitat      
Zitat:
Code:
anzahlZeilen = length(textread('meineDatei.txt', '%s'))

liefert die Anzahl von (durch space) getrennten Strings, jedoch nicht die Zeilenanzahl. Wink
Code:
anzahlZeilen = sum(fread(fopen('meine_datei.txt'))==char(10))
% fclose all



MfG
Private Nachricht senden Benutzer-Profile anzeigen
 
Titus
Forum-Meister

Forum-Meister


Beiträge: 871
Anmeldedatum: 19.07.07
Wohnort: Aachen
Version: ---
     Beitrag Verfasst am: 02.04.2008, 13:39     Titel:
  Antworten mit Zitat      
Hallo,
ups, outsider hat natürlich recht. Es fehlt noch ein Parameter:
Code:
anzahlZeilen = length(textread('meineDatei.txt', '%s', 'delimiter', '\n'))
 


Titus
Private Nachricht senden Benutzer-Profile anzeigen
 
micky
Forum-Anfänger

Forum-Anfänger


Beiträge: 20
Anmeldedatum: 07.05.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.05.2008, 13:33     Titel:
  Antworten mit Zitat      
Ich häng mich mal hier an den threat ran.
Ist eigentlich die gleiche Fragestellung, aber wie kann ich denn die Anzahl der Spalten zählen lassen.

Hab hier nen Datensatz und muss auf signifikanz überprüft werden. Sprich, ob viele Werteaufzeichnungen ein NaN haben und somit der Datensatz für eine weitere auswertung nicht zu gebrauchen ist, udn dafür brauch ich natürlich die gesamtzahl der Spalten. Die NaN's hab ich schon geschaft zählen zu lassen. den normalen 3satz bekomm ich dann schon hin.
da ich das automatisieren will, will ich natürlich nicht ständig die zahl per hand eingeben.

mfg
micky
Private Nachricht senden Benutzer-Profile anzeigen
 
steve
Ehrenmitglied

Ehrenmitglied



Beiträge: 2.029
Anmeldedatum: 03.09.07
Wohnort: Wien
Version: R2024a
     Beitrag Verfasst am: 13.05.2008, 13:39     Titel:
  Antworten mit Zitat      
Moin,

ich denke das dir der Befehl
Code:
weiterhelfen könnte. Damit bekommst du sowohl Zeilen- als auch Spaltenanzahl:
Code:
A = rand(3,5);
[zeilen spalten] = size(A);


Gruß
Alex
_________________

>> I told me to.

____________________________________
Matlab Cheat Sheet
goMatlab-Knigge - dran gehalten?!
Schon in den FAQ gesucht?
Ist vielleicht bei den Skripten oder den Tutorials was für dich dabei?
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.