Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Bücher:

Rapid Control Prototyping: Methoden und Anwendungen

Fachkräfte:
weitere Angebote

Partner:


Vermarktungspartner


Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Matrix erzeugen die bestimmte Werte einer anderen enthält

 

mrheisenberg
Forum-Newbie

Forum-Newbie


Beiträge: 5
Anmeldedatum: 03.05.20
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.05.2020, 18:37     Titel: Matrix erzeugen die bestimmte Werte einer anderen enthält
  Antworten mit Zitat      
Hallo,

ich habe eine recht große Matrix gegeben die die täglichen Kurse mehrer Aktienindizes über mehrere Jahre enthält.
Ich will nun eine neue Matrix erstellen mit monatlichen Beobachtungen, sprich nur noch die Endwerte am letzten Tag eines jeden Monats als Monatswert definieren.

Hat irgendjemand eine Ahnung mit welchen Funktionen/Schleifen ich das Problem angehen kann?
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 21.991
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 03.05.2020, 19:12     Titel:
  Antworten mit Zitat      
Hallo,

wie liegen die Daten denn vor?
Sofern noch nicht als Timetable, in einen solchen umwandeln und dann retime verwenden.

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
mrheisenberg
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 5
Anmeldedatum: 03.05.20
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.05.2020, 20:24     Titel:
  Antworten mit Zitat      
Hi Harald,

vielen Dank, ich schau mir das ganze mal an. Arbeite mit Matlab erst seit ein paar Tagen.

Die Daten waren ursprünglich in einer Excel-Tabelle. Habe sie dann entsprechend auf Matlab in einer Variable als Matrix gespeichert (4000*Cool. Wäre sehr umständlich die entsprechenden Daten mühsam ohne Funktion/Schleife zu extrahieren und einfach abzuschreiben.

Viele Grüße
Werner
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 21.991
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 03.05.2020, 20:44     Titel:
  Antworten mit Zitat      
Hallo,

Zitat:
Habe sie dann entsprechend auf Matlab in einer Variable als Matrix gespeichert

Eine Matrix? 1. Spalte numerisches Datum, 2. Spalte Wert, oder wie? Das wäre recht ungewöhnlich.

Wenn du readtimetable verwendest, bekommst du die Daten direkt als Timetable und kannst retime verwenden.

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
mrheisenberg
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 5
Anmeldedatum: 03.05.20
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.05.2020, 23:29     Titel:
  Antworten mit Zitat      
Hallo,


genau, 1. Spalte Datum, 2. und weitere Spalten die Kurswerte. Wieso ist das ungewöhnlich? Ich muss es doch in einer Variable haben, sonst kann ich nicht wissen welche Werte an welchem Datum waren.

Danke nochmal für die Hilfe.

Viele Grüße
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 21.991
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 03.05.2020, 23:32     Titel:
  Antworten mit Zitat      
Hallo,

Zitat:
Wieso ist das ungewöhnlich?

Weil man Datumsangaben inzwischen üblicherweise als datetime importiert.

Zitat:
Ich muss es doch in einer Variable haben, sonst kann ich nicht wissen welche Werte an welchem Datum waren.

Nein. Zwei Vektoren gleicher Länge gingen genauso.

Ich kann dir nur weiterhin Timetables und retime empfehlen.

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
mrheisenberg
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 5
Anmeldedatum: 03.05.20
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 04.05.2020, 16:42     Titel:
  Antworten mit Zitat      
Hi Harald,

danke nochmals für deine Antwort.

Ich verstehe nicht ganz den Sinn hinter den Timetables. Wieso ist das für mich von Vorteil, wenn ich die Zeitangaben in einem Timetable habe? Was genau ändert das für mich?

Ich habe versucht die Excel-Datei mit verschiedenen Funktionen (readtimetable z.B.) einzulesen, jedes mal kommt jedoch error.

Hast du ne Idee wie ich das Problem ohne timetable lösen kann? Hatte die Funktion lbusdate genutzt. Da kommt dann auch von jedem Jahr der letzte Tag eines jeden Monats raus. Wie ich das dann aber so anwende, dass ich aus der anfangs gegebenen Matrix eine neue erschaffe die bei den entsprechenenden Monatsendtagen auch noch die entsprechenden Kurswerte speichert bleibt mir ein Rätsel.


Viele Grüße
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 21.991
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 04.05.2020, 22:15     Titel:
  Antworten mit Zitat      
Hallo,

Zitat:
Wieso ist das für mich von Vorteil, wenn ich die Zeitangaben in einem Timetable habe? Was genau ändert das für mich?

Du kannst den Rest des Problem mit einem Befehl erledigen, dem schon genannten retime:
Code:
TT2 = retime(TT,'monthly','last')


Zitat:
Ich habe versucht die Excel-Datei mit verschiedenen Funktionen (readtimetable z.B.) einzulesen, jedes mal kommt jedoch error.

Dann sag doch bitte, welche Fehlermeldung. Wenn du eine Beispieldatei zur Verfügung stellst, kann ich dir auch sagen, wie du sie als Timetable einlesen kannst.

Zitat:
Wie ich das dann aber so anwende, dass ich aus der anfangs gegebenen Matrix eine neue erschaffe die bei den entsprechenenden Monatsendtagen auch noch die entsprechenden Kurswerte speichert bleibt mir ein Rätsel.

Ein Problem, das mit Timetables in der o.g. simplen Zeile gelöst wird. Es lohnt sich also, die Datei einmal in einem speziell für die Daten geeigneten Format zu importieren, weil das Leben danach sehr viel einfacher wird.

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
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
.


goMatlab ist ein Teil des goForen-Labels
goForen.de goMATLAB.de goLaTeX.de


 Impressum  | Nutzungsbedingungen  | Datenschutz  | Werbung/Mediadaten | Studentenversion | FAQ | goMatlab RSS Button RSS


Copyright © 2007 - 2020 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
Partner: LabVIEWforum.de

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.