Zeilen mit bestimmtem Monat aus Dataframe auslesen

Wie rufe ich R-Funktionen auf, wie selektiere ich Daten, ich weiß nicht genau ....

Moderatoren: EDi, jogo

Antworten
Dodo
Beiträge: 8
Registriert: Fr Feb 15, 2019 8:00 pm

Zeilen mit bestimmtem Monat aus Dataframe auslesen

Beitrag von Dodo » Di Feb 19, 2019 1:12 am

Hallo R-Community,

Ich habe eine Dataframe mit zwei Spalten.

Code: Alles auswählen

      Beginn Dauer
1  2015-06-30     6
2  2015-07-15     4
3  2015-07-20     3
4  2015-08-05     4
5  2015-08-29     3
6  2016-08-25     4
7  2017-05-27     3
8  2017-06-19     3
9  2017-07-05     4
10 2018-07-24     4
11 2018-07-29     3
12 2018-08-02     8
13 2018-08-20     4
Daraus möchte ich gerne alle Zeilen auslesen, bei denen der Beginn im Monat Juni ist. Ich habe es mit der which Funktion probiert. Allerdings weiß ich nicht, wie ich die Argumente eingeben muss, dass nur Zeilen ausgelesen werden mit dem Beginn im Juni. Das Format des Datum in der Spalte Beginn ist "%d.%m.%Y")

vielen Dank für eure Hilfe

mit freundlichen Grüßen Dodo

jogo
Beiträge: 1310
Registriert: Fr Okt 07, 2016 8:25 am

Re: Zeilen mit bestimmtem Monat aus Dataframe auslesen

Beitrag von jogo » Di Feb 19, 2019 11:06 am

Hallo Dodo,

Code: Alles auswählen

subset(Dataframe, substr(Beginn, 5, 8)=="-06-")
sollte es erledigen können.

Gruß, Jörg

Dodo
Beiträge: 8
Registriert: Fr Feb 15, 2019 8:00 pm

Re: Zeilen mit bestimmtem Monat aus Dataframe auslesen

Beitrag von Dodo » Di Feb 19, 2019 12:35 pm

Hallo Jörg
es funktioniert. Vielen Dank:)
Könntest du mir eventuell noch erklären, warum man bei substr für Start bzw. Stop 5 bzw. 8 eingibt. Ich würde die Funktion gerne verstehen, damit ich in Zukunft nicht mehr so viel fragen muss :D
Und wie würde ich die Bedingung aussehen, wenn beispielsweiße nach Jahren auslesen möchte?

Für 2015 so irgendwie in der Art? =="2015- -"

vielen Dank

bigben
Beiträge: 907
Registriert: Mi Okt 12, 2016 9:09 am

Re: Zeilen mit bestimmtem Monat aus Dataframe auslesen

Beitrag von bigben » Di Feb 19, 2019 2:17 pm

Hallo Dodo,

Was ist das 5. und was das 8. Zeichen in der Zeichenfolge "2015-06-30"?

Was passiert bei

Code: Alles auswählen

substr("2015-06-30", 1, 5)
substr("2015-06-30", 3, 4)
LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte

jogo
Beiträge: 1310
Registriert: Fr Okt 07, 2016 8:25 am

Re: Zeilen mit bestimmtem Monat aus Dataframe auslesen

Beitrag von jogo » Di Feb 19, 2019 2:35 pm

Hallo Dodo,
Dodo hat geschrieben:
Di Feb 19, 2019 12:35 pm
Hallo Jörg
es funktioniert. Vielen Dank:)
prima
Könntest du mir eventuell noch erklären, warum man bei substr für Start bzw. Stop 5 bzw. 8 eingibt. Ich würde die Funktion gerne verstehen, damit ich in Zukunft nicht mehr so viel fragen muss :D
Das kann ich auch nicht besser beschreiben als es in der Dokumentation der Funktion steht:

Code: Alles auswählen

?substr
example(substr)
Und wie würde ich die Bedingung aussehen, wenn beispielsweiße nach Jahren auslesen möchte?
Ich könnte mir auch gut vorstellen, dass Du eine entsprechende zusätzliche Spalte in Deinem Dataframe erzeugen möchtest, um diese dann als Gruppierungsvariable zu verwenden ...

Gruß, Jörg

Dodo
Beiträge: 8
Registriert: Fr Feb 15, 2019 8:00 pm

Re: Zeilen mit bestimmtem Monat aus Dataframe auslesen

Beitrag von Dodo » Di Feb 19, 2019 3:04 pm

Vielen Dank euch:) ich habe es jetzt verstanden. Vorallem die Frage von Bernhard hat mir einen guten Denkanstoß gegeben. Wenn ich also das selbe für das Jahr 2015 machen würde, müsste der Code folgendermaßen aussehen.

Code: Alles auswählen

subset(Dataframe, substr(Beginn, 1, 5)=="2015-")

mit freundlichen Grüßen

Benutzeravatar
EDi
Beiträge: 817
Registriert: Sa Okt 08, 2016 3:39 pm

Re: Zeilen mit bestimmtem Monat aus Dataframe auslesen

Beitrag von EDi » Di Feb 19, 2019 5:20 pm

Oder im tidyverse :

Code: Alles auswählen

library(lubridate) 
month(ymd("2015-06-30"))
Bitte immer ein reproduzierbares Minimalbeispiel angeben. Meinungen gehören mir und geben nicht die meines Brötchengebers wieder.

Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
Bild.

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast