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

abschnittweise Zeilen einer Matrix addieren und speichern

 

kokett91
Forum-Anfänger

Forum-Anfänger


Beiträge: 11
Anmeldedatum: 22.11.15
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.07.2016, 00:19     Titel: abschnittweise Zeilen einer Matrix addieren und speichern
  Antworten mit Zitat      
Hallo zusammen,

ich stehe vor einem Problem, welches ich nicht gelöst bekomme:
Es handelt sich um eine 8760x1 Matrix, es handelt sich dabei um Stundenwerte. Diese Stundenwerte will ich jetzt zu Tageswerte zusammenfassen und in einer neuen Matrix speichern.

Aus der 8760x1 Matrix soll eine 365x1 Matrix werden.
Hierbei enthält die erste Zeile die Zeilen 1:24 der 8760x1 Matrix, also den erste Tag.
Die zweite Zeile beinhaltet die Zeilen 25:48 der 8760x1 Matrix und somit den 2. Tag.
Es werden also immer 24 Werte der 8760x1 Matrix addiert und dann als Tag gespeichert.

Bei einer For-Schleife kann ich ja nur die Sprungweite einstellen, aber nicht diese Zusammenfassung von jeweils 24 Zeilen, die addiert werden sollen.

Habt ihr da eine Idee und könnt mir helfen?

Liebe Grüße
kokett
Private Nachricht senden Benutzer-Profile anzeigen


kokett91
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 11
Anmeldedatum: 22.11.15
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.07.2016, 09:44     Titel:
  Antworten mit Zitat      
Also ich würde es per Hand hinbekommen.

Code:
Tag(1,1)=sum(A(1:24)) --> 1.Tag
Tag(2,1)=sum(A(25:48) -->2.Tag
usw.


Das ist aber mega viel Aufwand und ein langer Code, der nicht wirklich in mein Skript passt.

Geht das nicht durch eine Ergänzung, sodass immer die nächsten 24Werte addiert und in eine Zeile gespeichert werden?

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

Forum-Meister


Beiträge: 745
Anmeldedatum: 30.10.12
Wohnort: hier
Version: R2020a
     Beitrag Verfasst am: 28.07.2016, 11:40     Titel: Re: abschnittweise Zeilen einer Matrix addieren und speicher
  Antworten mit Zitat      
kokett91 hat Folgendes geschrieben:

Bei einer For-Schleife kann ich ja nur die Sprungweite einstellen, aber nicht diese Zusammenfassung von jeweils 24 Zeilen, die addiert werden sollen.


Warum sollte es nicht mit einer Schleife gehen?
Musst halt ein bisschen verallgemeinern - ist doch eine ganz einfache Reihe.
immer von (24*(Tag-1) +1) : (24*Tag)
_________________

LG
Martina

"Wenn wir bedenken, daß wir alle verrückt sind, ist das Leben erklärt." (Mark Twain))
Private Nachricht senden Benutzer-Profile anzeigen
 
kokett91
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 11
Anmeldedatum: 22.11.15
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.07.2016, 13:54     Titel: Re: abschnittweise Zeilen einer Matrix addieren und speicher
  Antworten mit Zitat      
Mmmartina hat Folgendes geschrieben:
kokett91 hat Folgendes geschrieben:

Bei einer For-Schleife kann ich ja nur die Sprungweite einstellen, aber nicht diese Zusammenfassung von jeweils 24 Zeilen, die addiert werden sollen.


Warum sollte es nicht mit einer Schleife gehen?
Musst halt ein bisschen verallgemeinern - ist doch eine ganz einfache Reihe.
immer von (24*(Tag-1) +1) : (24*Tag)


hallo Maritina,
ich kann deinen Hinweis leider nicht nachvollziehen:
ich muss ja von 1:8760 gehen, wobei immer 24Zeilen (24Std/Tag) addiert werden sollen und in in eine neue Matrix gespeichert werden, sodass eine 365x1 Matrix entsteht.
Private Nachricht senden Benutzer-Profile anzeigen
 
thomasfeja
Forum-Newbie

Forum-Newbie


Beiträge: 5
Anmeldedatum: 28.07.16
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.07.2016, 16:16     Titel:
  Antworten mit Zitat      
Probier es doch mal hiermit:

Code:
% Testdaten aus Zufallszahlen
Stunden = rand(8760,1);

% Tageweise summieren
Tage = sum(reshape(Stunden,24,365));


Der Befehl reshape ordnert die Daten aus dem Stunden-Vektor in einer Matrix 24x365 an.

Die erste Spalte enthät die Werte Nr 1. bis 24 usw.

Der Befehl sum summiert die Matrix entlang der Spalten.
Private Nachricht senden Benutzer-Profile anzeigen
 
kokett91
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 11
Anmeldedatum: 22.11.15
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.07.2016, 17:33     Titel:
  Antworten mit Zitat      
thomasfeja hat Folgendes geschrieben:
Probier es doch mal hiermit:

Code:
% Testdaten aus Zufallszahlen
Stunden = rand(8760,1);

% Tageweise summieren
Tage = sum(reshape(Stunden,24,365));


Der Befehl reshape ordnert die Daten aus dem Stunden-Vektor in einer Matrix 24x365 an.

Die erste Spalte enthät die Werte Nr 1. bis 24 usw.

Der Befehl sum summiert die Matrix entlang der Spalten.


Perfekt, das habe ich gesucht. Danke dir
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 - 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.