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

Tabelle Manipulieren

 

BUUBLE
Forum-Anfänger

Forum-Anfänger


Beiträge: 18
Anmeldedatum: 20.01.21
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 17.03.2023, 13:05     Titel: Tabelle Manipulieren
  Antworten mit Zitat      
Hallo zusammen,

ich versuche vergeblich aus einer Tabelle Werte über eine bestimmte Zeit zu mitteln. Das Ziel ist es den Mittelwert der Einstrahlung über einen Zeitraum von einer Stunde zu ermitteln.

Als erstes habe ich die Daten aufgerufen und bereinigt, da das Pyranometer immer ab 00:00.00 Uhr ein Reset durchführt und dann die Werte auf null runterfallen.

Code:
%% Initalisierung
clear
close all
clc
T=importdata("2022.mat"); % A beinhaltet die Strahlung [W/m^2] sowie die Temperatur [°C] des Jahres 2022
s1=size(T);

%% Datenbereinigung, da um 00:00:00 Uhr der Sensor zurückgesetzt wurde und somit die Werte gleich null sind
toDelete = T.einstrahlung == 0;
T(toDelete,:)= [];      
s2=size(T);
 


Die Zeitangabe habe ich als Datumsformat sowie auch als unixtime.
Ich möchte es erst einmal statisch programmieren, bevor ich es dynamsch ausführe.
Wie ich den Mittelwert bestimme ist mir klar. Und wie ich die erste und letzte Zeile finde auch. Nur Frage ich mich wie ich mir die Zeilennummer ausgeben lassen kann?

Code:
%% Berechnung des durchschnittlichen Solarstrahlung pro Stunde
rows_0=(T.unixtime == 1640991601);
rows_1=(T.unixtime == 1640995142);
m=varfun(@mean,T(1:60,"einstrahlung"),"InputVariables","einstrahlung");
 


Ich hoffe ich habe mein Problem und den Hintergrund soweit verständlich beschrieben.

Viele Grüße,

David

2022.mat
 Beschreibung:
Daten eines Pyranometers von 2022

Download
 Dateiname:  2022.mat
 Dateigröße:  4.09 MB
 Heruntergeladen:  299 mal
Private Nachricht senden Benutzer-Profile anzeigen


Harald
Forum-Meister

Forum-Meister


Beiträge: 24.484
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 17.03.2023, 16:57     Titel:
  Antworten mit Zitat      
Hallo,

ich bin mir nicht sicher, ob ich die Frage richtig verstehe. Wenn du aus den Daten stündliche Daten machen möchtest, geht das am einfachste mit retime .

Zitat:
Nur Frage ich mich wie ich mir die Zeilennummer ausgeben lassen kann?

Welche Zeilennummer denn?

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
 
BUUBLE
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 18
Anmeldedatum: 20.01.21
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.03.2023, 09:34     Titel:
  Antworten mit Zitat      
Hallo Harald,

also das Ziel ist es den Mittelwert der Einstrahlung jede Stunde sich ausgeben zulassen. Deswegen bräuchte ich doch die Zeilennummer von Beginn der Stunde bis zum Ende der Stunde, um dann mit folgender Funktion den Mittelwert ausgeben zulassen.

Code:
m=varfun(@mean,T(1:60,"einstrahlung"),"InputVariables","einstrahlung");


Ich werde mir jetzt die Funktion retime angucken. Das wird hoffentlich mir schon weiterhelfen.

Bis dann,

David
Private Nachricht senden Benutzer-Profile anzeigen
 
BUUBLE
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 18
Anmeldedatum: 20.01.21
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.03.2023, 10:18     Titel:
  Antworten mit Zitat      
Habe jetzt die Tabelle (s. Anhang) nach "Time" und "Einstrahlung" sortiert und wollte nun die Funktion retime anwenden. Das habe ich auch wie folgt:

Code:
TT2=retime(T,'hourly','mean');


Leider bekomme ich den folgenden Fehler:

Zitat:
Incorrect number or types of inputs or outputs for function 'retime'.
Error in Jahresdauerkennlinie_PV (line 20)
TT2=retime(T,'hourly','mean');
Private Nachricht senden Benutzer-Profile anzeigen
 
BUUBLE
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 18
Anmeldedatum: 20.01.21
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 20.03.2023, 10:33     Titel:
  Antworten mit Zitat      
Habe den Anhang vergessen Very Happy

Einstrahlung_2022.mat
 Beschreibung:

Download
 Dateiname:  Einstrahlung_2022.mat
 Dateigröße:  2.35 MB
 Heruntergeladen:  173 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
BUUBLE
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 18
Anmeldedatum: 20.01.21
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 21.03.2023, 11:58     Titel:
  Antworten mit Zitat      
Hat sich geklärt. Musste die Tabelle in eine Timetable konvertieren Smile
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.