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

Runden auf 5 Nachkommastellen

 

G-man
Forum-Newbie

Forum-Newbie


Beiträge: 1
Anmeldedatum: 09.08.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.08.2010, 17:30     Titel: Runden auf 5 Nachkommastellen
  Antworten mit Zitat      
Hallo,

folgende Problem:

ich importiere aus eine Excel-Tabelle Zahlen meiner Messreihe, da diese aber in [ms] sind gehen sie in die Millionen.


In Excel lautet die Zahl: 1007697, in Matlab bekomme ich jedoch nun 1,0077 heraus. Weiss jemand warum?

Ich würde gerne diese Zahl gerne haben, jedoch auf möglichst 5 Nachkommastellen gerundet von der Ursprünglichen.

Vielen Dank für eure Antworten
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 09.08.2010, 17:52     Titel:
  Antworten mit Zitat      
Hallo,

wenn du von der Anzeige im Command Window sprichst: die kann über den Befehl format eingestellt werden.
Code:


Intern und für weitere Berechnungen verwendet MATLAB sämtliche zur Verfügung stehenden Stellen (ca. 15). Wenn du auf 5 Stellen runden willst, dann geht
Code:
round(x*100000)/100000


Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 09.08.2010, 18:19     Titel: Re: Runden auf 5 Nachkommastellen
  Antworten mit Zitat      
Hallo G-man,

G-man hat Folgendes geschrieben:

In Excel lautet die Zahl: 1007697, in Matlab bekomme ich jedoch nun 1,0077 heraus. Weiss jemand warum?

Wenn die Ländereinstellungen in Windows auf "Deutschland" gestellt wind, liest Excel die Zahl "1.007.697,0" als 1007697 ein, Matlab verläßt sich aber darauf, dass die Punkte die Dezimal-Trenner sind. Die beste Abhilfe ist es, in den Ländereinstellungen die Dezimal-Trenner und Punkte gemäß dem amerikanischen Schema zu ändern.

Gruselig, dass sich da nichts getan hat, seit ich mit Office97 und Matlab 4.1.2 die gleichen Probleme hatte.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
yankemen
Forum-Century

Forum-Century


Beiträge: 104
Anmeldedatum: 14.04.10
Wohnort: ---
Version: 32: 2008a & 2010a
     Beitrag Verfasst am: 10.08.2010, 10:59     Titel:
  Antworten mit Zitat      
Moin G-man,

ja, das ist ein Konvertierungsproblem.
Ich habe beim Weg von Excel zu Matlab immer den Umweg über eine Textdatei gemacht: Copy'n'paste und dann Strg+F für Finden&Ersetzen, und zwar das Komma als Punkt.
Zumindest Excel2003 ist recht störrisch, wenn es um die Sache unter Extras->Optionen->International geht. (Dort kann man das einstellen).
Für den Weg von Matlab zu Excel ging ich auch den händischen Weg über einen Text-Datei, auch wenn es hier eigentlich so klappt. Nur ist das Speichern in Excel sehr zeitaufwendig. Folglich nutze ich dann den Textimportassistenten, um die Trennzeichen einzustellen.

Ciao,
yankemen
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 10.08.2010, 19:05     Titel:
  Antworten mit Zitat      
Hallo Yankemen,

wie wäre es mit Ausdrucken, per Express in ein Billig-Lohn-Land schicken und dort abtippen lassen? Man könnte auch die Kommas mit Tipp-Ex in Punkte verwandeln.

Der Länder-Einstellungs-abhängige Datenexport von Excel ist albern und quält Matlab-Nutzer seit vielen Jahren. Der Transport über den CSV-Export hilft, ist aber irgendwie recht hölzern, oder?!

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 01.08.2011, 17:39     Titel: xlsread, txt2matlab
  Antworten mit Zitat      
Auch wenn ich spät dran bin:

Der direkte Weg ist über xlsread. Das funktioniert auch von den Dezimaltrennern her optimal.

Was mir beim einlesen von Daten auch sehr weitergeholfen hat ist txt2matlab.


Servus
Martin
 
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 - 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.