Ich benutze eine Kabeljau, wo ich Wärmewelle für aufeinanderfolgende Tage erkennen kann, aber ich kann nicht herausfinden, wie ich auch die Kabeljau die höchste mittlere Temperatur über jedes Hitzebindungsereignis aufgezeichnet bekommen kann . Der Header meiner Daten (Period1): Jahr Monat Tag Mittelwert MAX MINBerechnung der Durchschnitt über aufeinanderfolgende Tage, die eine Bedingung erfüllen
Meine Codes sind:
setDT(Period1)
Period1[, hotday := +(Period1$MAX>=(quantile(Period1$MAX,.9, na.rm = T, type = 6)) & Period1$MIN>=(quantile(Period1$MIN,.8, na.rm = T, type = 6)))
][, hw.length := with(rle(hotday), rep(lengths,lengths))
][hotday==0, hw.length:=0]
Das Ergebnis des Code:
YEAR MONTH DAY MEAN MAX MIN hotday hw.length
1 2005 7 1 34.7 42 28 0 0
2 2005 7 2 35 41.8 28.8 0 0
3 2005 7 3 34.6 41.5 27 1 2
4 2005 7 4 35.4 43 27.6 1 2
5 2005 7 5 35.4 42 27.4 0 0
6 2005 7 6 34.4 42.2 27.7 0 0
7 2005 7 7 34 39.3 28.6 1 4
8 2005 7 8 34.9 40.6 29 1 4
9 2005 7 9 35.7 41 28.2 1 4
10 2005 7 10 35.1 42.2 28.5 1 4
11 2005 7 11 34.9 42.5 29 0 0
12 2005 7 12 35.5 43.2 28 0 0
13 2005 7 13 36.1 43 29.2 1 3
14 2005 7 14 36.4 43.4 32 1 3
15 2005 7 15 36.5 44.5 29.2 1 3
16 2005 7 16 36.2 42.6 31.2 0 0
17 2005 7 17 34.6 40 30 0 0
18 2005 7 18 33.7 41 28.8 0 0
Für Hitzewelle auf 2005/7/3
und 2005/7/4
der höchste ist 35.6
, wo für die zweite Hitzewelle, die auf 2005/7/7
starrte und endete auf 2005/7/10
der höchste Mittelwert war 35.7
. Ich würde mich über jede Idee freuen, wie ich den höchsten Mittelwert jeder Hitzewelle unter Berücksichtigung der aufeinanderfolgenden Tage erfassen kann.
, wenn Sie sagen, dass Sie können eine Hitzewelle "erkennen", kennen Sie das Start- und Enddatum der Hitzewelle? – nathanesau
der Start ist, wenn die Maximal- und Minimaltemperaturen die 90. bzw. 80. überschreiten und das Ende ist, wenn diese Bedingung stoppt – Moore
Ausführen von Code von oben auf den bereitgestellten Beispieldaten, ergibt nicht das gleiche Ergebnis für die 'Hotday' und 'hw.length' Variablen ..... Für beide Variablen wird alles auf Null gesetzt. – Jaap