Verfasst am: 08.06.2017, 08:12
Titel: Einlesen einer bestimmter werte aus *.txt
Hallo Allerseits,
ich habe mal ein kleines anliegen was ich mit meinen Kenntnissen nicht so ganz lösen kann.
Für eine Projektarbeit soll ich eine Versuchsanlage auslegen. Als ausgangs werte gibt es eine Messtabelle in TXT Format. Das ganze kann man auch "Manuell" lösen, ich wollte aber dafür MatLab verwenden, wenn wir es schon als Studiumwerkzeug haben.
Mein Problem besteht darin , dass ich die Txt nicht eingebunden bekomme. Leider war das Maximale im Labor was wir gemacht haben bissl Induktivität berechnen und paar Plots und Grafiken zeichnen.
Mit einem Code was ich im Netz gefunden habe, ersetze ich komas durch punkte damit MatLab damit was anfangen kann.
Code:
function comma2point(File) % Generate a new file named Oldfilename_Modified.ending. In the new File all % ',' are changed to '.' Needs a full datapath and filename as input.
ich bin kein Urheber dieses codes. Aber es funktioniert.
Die Numerierungszeile und Datum sind unwichtig. Zeit ist wichtig aber in Minuten.
ZB: dauer = [0:10:300] (startet bei 0 Minuten und dauert 300 Minuten), kann ich aber im Programm fest hinterlegen.
Was für mich wichtig ist sie die Werte in spalten:
zuluftTemp
abluftTemp
luftgesch
druck
gewicht
gewichtsändrerung
Es würde mir sehr freuen wenn ihr mich nicht gleich zerfleischt für mein Unwissen und hilft dieses Projekt umzusetzen . Auf die benotung oder sonstiges hat es keine Auswirkung. Mache es mehr für mich, für gute Note kann ich auch das ganze in exel Manuel machen oder aufm Blatt.
Vielen Dank im voraus.
Verfasst am: 08.06.2017, 16:12
Titel: Re: Einlesen einer bestimmter werte aus *.txt
Hallo Tryz,
Du hast nun Code, der die Kommas in Punkte umwandelt.
Was möchtest Du jetzt weiter tun?
Zitat:
Die Numerierungszeile und Datum sind unwichtig. Zeit ist wichtig aber in Minuten.
ZB: dauer = [0:10:300] (startet bei 0 Minuten und dauert 300 Minuten), kann ich aber im Programm fest hinterlegen.
Was bedeutet das genau?
Du kannst das File mit
textscan
einlesen und dabei alle Spalten importieren. Versuche es mal und erkläre dann, was noch nicht wie gewünscht läuft.
Gruß, Jan
Tryz
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 09.06.2017, 07:10
Titel:
Ja genau, ich habe die Simulator Datei angepasst so das matlab meine Dezimalzahlen richtig erkennt . Aber das einlesen funktioniert nicht. Ich habe schon vieles probiert leider ist mein wissen viel zu klein dafür. Habe immer Fehlermeldungen oder es kommen keine werte rein.
ich hätte es gerne die es so das ich die oben genante variablen erzeuge und die dan mit werten aus meiner txt fülle, zb
zuluftTem mit allen werten aus der 4 spalte
druck alle werte aus der 7 spalte.
aber wie gesagt ich hab nicht mal eine Vorstellung wie ich anfangen soll. was ich mache ist nichts anderes als fremde Codes aus dem netzt passend umzuschreiben, aber naja sogar dafür bin ich zu dum
als Trennzeichen einen Punkt, in deiner angehängten txt Datei sehe ich allerdings keine Punkte als Trennzeichen außer im Datum...
Außerdem wenn ich mich nicht täusche muss bei textscan pro einzulesende Spalte ein %s (o.Ä.) stehen, sonst ließt er nur 2 Spalten ein.
Was für eine Fehlermeldung kommt denn?
_________________
Grüße Equi
Tryz
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 09.06.2017, 09:34
Titel:
Hallo equi,
mit dem code hab ich kein Problem funktioniert alles wie soll. ist aber auch nur Funktion um die Kommas durch Punkte zu ersetzen. im Anhang ist die damit erzeugte Datei. mir gehts um die nächsten schritte
Damit funktioniert es soweit gut.
Dann habe ich probiert den Code auf meine Simulator-Datei anzuwenden und es funktioniert nicht. Da kommt das ABER, wenn man die Datei zum erstem mal öffnet ist alles noch ok. Ein mal das Programm laufen lassen geht nichts alle array sind leer. Dann habe ich die Datei geöffnet (nicht im Matlab) sondern so über Explorer und folgendes gefunden. es sind lauter China Symbole drin.
Das ist glaub das Problemm warum mein einlesen nicht funktioniert. Was meint ihr dazu?
Ich hab zwar keine Ahnung woher die Chinesischen Schriftzeichen kommen aber ich würde mal sagen dann liegt es an deinem Programm
Kommt in Matlab irgendeine Fehlermeldung?
Evtl. würde ein Auszug aus deinem Programm weiterhelfen.
Vermutlich nicht für mich aber für andere, denn sowas mit den Symbolen hatte ich noch nie:D
_________________
Grüße Equi
Tryz
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 12.06.2017, 11:50
Titel:
Ne kommt nichts. nur die ganzen Werte sind leer. Steht 0x1 cell.
Habe jetzt die ersten 20 Zeilen manuell abgetipt und gespeichert, damit funktioniert es. jetzt muss ich schauen was mit der txt aus dem Simulator nicht ok ist.
Tryz
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 12.06.2017, 14:52
Titel:
Problem gelöst, aber nicht mit Hilfe vom Forum. Leider ist der Forum bis auf den Tipp wie mann Zeilen auslassen kann nicht wirklich Hilfreich. Schade Tote Tose hier. Nicht empfehlenswert für ein Hilfesuchenden!!!
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
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.