Hallo!
Mein Problem ist eher "technischer" Natur, aber vielleicht gibt es hier Expert*innen, die mir mit meiner Datenanalyse in R weiterhelfen können. Excel wäre als Alternativprogramm auch möglich.
Ich möchte in einem Dataframe mit täglichen Niederschlagsmengen (über 26.000 Tage/Zeilen/Fälle) "Trockenperioden" herausfinden, das sind mindestens 10 Tage am Stück ohne Niederschlag, also der Niederschlagsmenge 0. Wie kann ich in R diese zusammenhängenden Tage/Zeilen/Fälle filtern?
Die Filterung nach Tagen mit 0 Niederschlag an sich ist kein Problem, auch die Anzahl pro Jahr/Jahrzehnt etc. bekomme ich raus. Wichtig ist aber eben auch das Auftreten von Trockenperioden.
Hoffentlich kann mir da jemand helfen... Vielen Dank im Voraus!
In R (oder Excel): mehrere Zeilen am Stück filtern?
-
- Beiträge: 2
- Registriert: 17.01.2023, 16:08
-
- Beiträge: 2773
- Registriert: 01.02.2018, 10:45
Re: In R (oder Excel): mehrere Zeilen am Stück filtern?
Hallo
du kennst den Befehl:
data_m <- subset(data, Geschlecht == 0)
z.B.
das Problem ist wohl die Unterscheidung
Perioden mit mind 10 tage in Reihe und weniger als 10 Tage
Ich würde sagen, da musst du durch Umkodierung erstmal Hilfsvariablen bauen!
gruß
dutchie
du kennst den Befehl:
data_m <- subset(data, Geschlecht == 0)
z.B.
das Problem ist wohl die Unterscheidung
Perioden mit mind 10 tage in Reihe und weniger als 10 Tage
Ich würde sagen, da musst du durch Umkodierung erstmal Hilfsvariablen bauen!
gruß
dutchie
-
- Beiträge: 2
- Registriert: 17.01.2023, 16:08
Re: In R (oder Excel): mehrere Zeilen am Stück filtern?
Hallo!
Das Subset, das nur Tage mit 0 Niederschlag enthält, habe ich bereits erstellt. Das sind aber immer nur über 13.000 Zeilen, was eine händische Auswertung und Auszählung der 10-tägigen Perioden nicht sinnvoll erscheinen lässt.
In dem Subset sind auch die Datumsparameter Jahr, Monat und Tag in je einer Spalte gespeichert.
Mein Problem ist eben genau das "in Reihe", also wie ich R oder Excel sagen kann, dass ich mindestens 10 Zeilen bzw. Tage am Stück suche, die 0 Niederschlag haben.
Gibt es eventuell in Verbindung mit einem if-Befehl eine Möglichkeit, dem Programm zu sagen, es soll dann die folgende Zeile untersuchen?
Sowas wie: Wenn du in Zeile x den Niederschlag = 0 findest, dann suche auch in Zeile x+1 nach Niederschlag = 0. Wenn du auch in Zeile x+1 Niederschlag = 0 findest, dann suche weiter in Zeile x+2, x+3 usw.
Das Subset, das nur Tage mit 0 Niederschlag enthält, habe ich bereits erstellt. Das sind aber immer nur über 13.000 Zeilen, was eine händische Auswertung und Auszählung der 10-tägigen Perioden nicht sinnvoll erscheinen lässt.
In dem Subset sind auch die Datumsparameter Jahr, Monat und Tag in je einer Spalte gespeichert.
Mein Problem ist eben genau das "in Reihe", also wie ich R oder Excel sagen kann, dass ich mindestens 10 Zeilen bzw. Tage am Stück suche, die 0 Niederschlag haben.
Gibt es eventuell in Verbindung mit einem if-Befehl eine Möglichkeit, dem Programm zu sagen, es soll dann die folgende Zeile untersuchen?
Sowas wie: Wenn du in Zeile x den Niederschlag = 0 findest, dann suche auch in Zeile x+1 nach Niederschlag = 0. Wenn du auch in Zeile x+1 Niederschlag = 0 findest, dann suche weiter in Zeile x+2, x+3 usw.
-
- Beiträge: 2773
- Registriert: 01.02.2018, 10:45
Re: In R (oder Excel): mehrere Zeilen am Stück filtern?
Hallo
wenn die Datei nur noch die 0 Niederschlagstage enthält,
woher will man dann wissen wann die Periode endet?
Die "Reihe" läuft ja über das Datum und die 0er und eben nicht 0er.
nicht über die Zeilen.
Also, in SPSS wüsst ich wie ich das angehe
in R kenn ich dazu die entsprechenden Befehle nicht.
Ich würde erstmal eine Variable bauen pro tag Niederschlag ja nein.
Aber da muss man tüfteln...
sorry gruß
dutchie
wenn die Datei nur noch die 0 Niederschlagstage enthält,
woher will man dann wissen wann die Periode endet?
Die "Reihe" läuft ja über das Datum und die 0er und eben nicht 0er.
nicht über die Zeilen.
Also, in SPSS wüsst ich wie ich das angehe
in R kenn ich dazu die entsprechenden Befehle nicht.
Ich würde erstmal eine Variable bauen pro tag Niederschlag ja nein.
Aber da muss man tüfteln...
sorry gruß
dutchie