Lückenhaften Datensatz bereinigen

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

Moderatoren: EDi, jogo

Effigy
Beiträge: 11
Registriert: Di Nov 26, 2019 11:44 am

Re: Lückenhaften Datensatz bereinigen

Beitrag von Effigy » Mi Nov 27, 2019 3:11 pm

Hallo hallo,

noch eine Frage: Wie kann ich alle NA-Werte eines bestimmten Tages zählen und prozentual ausdrücken lassen?

Danke!

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

Re: Lückenhaften Datensatz bereinigen

Beitrag von jogo » Mi Nov 27, 2019 4:31 pm

Code: Alles auswählen

D <- read.delim("http://forum.r-statistik.de/download/file.php?id=781", header=FALSE, skip=2, na.strings = "---")

H <- read.delim("http://forum.r-statistik.de/download/file.php?id=781", nrows=1)
colnames(D) <- colnames(H)

D$Tag <- as.Date(D$X, "%d.%m.%y")
#aggregate(Temp ~ Tag, data=D, FUN=mean, na.rm=TRUE)
tapply(is.na(D$Temp), D$Tag, FUN=sum)
Gruß, Jörg

Effigy
Beiträge: 11
Registriert: Di Nov 26, 2019 11:44 am

Re: Lückenhaften Datensatz bereinigen

Beitrag von Effigy » Mo Dez 02, 2019 12:50 pm

Vielen Dank mal wieder, es hat funktioniert.

Wozu machst du das?

Code: Alles auswählen

H <- read.delim("http://forum.r-statistik.de/download/file.php?id=781", nrows=1)
colnames(D) <- colnames(H)
Gruß, Max

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

Re: Lückenhaften Datensatz bereinigen

Beitrag von jogo » Mo Dez 02, 2019 12:54 pm

um wenigstens einen Teil der Spaltenüberschriften zu nutzen.
Wie machst Du es bis jetzt? Nutzt Du die Standardnamen für die Spalten V1, V2, ...
oder setzt Du die Spaltennamen völlig neu?

Gruß, Jörg

Effigy
Beiträge: 11
Registriert: Di Nov 26, 2019 11:44 am

Re: Lückenhaften Datensatz bereinigen

Beitrag von Effigy » Mo Dez 02, 2019 4:08 pm

Ich nutze die Standardnamen.

Ich steh mal wieder vor ner Herausforderung: Ich möchte einen schönen Grafen aus dem Datensatz im Anhang erstellen. Mein Idee war, irgendwas mit Linien zu machen, weil später mehrere Linien in den Graf sollen, die die Temperatur für jeden Tag anzeigen.

Ich benutze diesen Code:

Code: Alles auswählen

ggplot(data = WSDede4, aes(x = Var1, y = Freq )) +
          geom_freqpoly()
und bekommen als Dank folgende Fehlermedlung:

Error: stat_bin() must not be used with a y aesthetic.

Wenn ich das y=Freq dann weglasse

Code: Alles auswählen

ggplot(data = WSDede4, aes(x = Var1)) +
          geom_freqpoly(binwidth=20)
kommt ein super komischer Graf. Liegt es daran das freqpoly nicht für meine Daten geeignet ist? Wenn ich geom_line nehme geht es. Warum? Was ist der Unterschied? Ich habe doch eine stetige Variable, die Temperatur (Freq), und laut diesem sheet

https://rstudio.com/wp-content/uploads/ ... german.pdf,

müsste ich dann auch ein freqpoly machen können. Wo liegt mein Denkfehler?
Dateianhänge
WSDede4.txt
(1.01 KiB) 2-mal heruntergeladen

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

Re: Lückenhaften Datensatz bereinigen

Beitrag von jogo » Di Dez 03, 2019 8:16 am

Hallo Effigy,

kannst Du bitte den Code angeben, mit dem Du die Datei WSDede4.txt einliest?
Das ist sonst jedes Mal ein unnötiges Ratespiel bezüglich der Parameter von read.table() o.ä., das den Hilfsbereiten aufgebürdet wird.

Gruß, Jörg

Effigy
Beiträge: 11
Registriert: Di Nov 26, 2019 11:44 am

Re: Lückenhaften Datensatz bereinigen

Beitrag von Effigy » Di Dez 03, 2019 11:01 am

Hallo Jörg,

die Datei WSDede4.txt ist nicht eingelesen, sondern eine Bearbeitung von der Datei WSDede, die ich so eingelesen habe:

Code: Alles auswählen

WSDede <- read.delim(header=TRUE, na.strings = "---", skip=1, file.choose())
ich hab einen Grafen mit geom_line geplottet und es klappt mit folgendem Code:

Code: Alles auswählen

ggplot(data =WSDede4, aes(x = Var1, y= Freq)) + 
  geom_line(color = "red") +
  geom_point(color= "red")
Einen Grafen mittels Geom_freqpoly konnte ich ebenfalls mit folgendem Code erstellen:

Code: Alles auswählen

ggplot(data =WSDede4, aes (x=Var1, y =Freq)) +
  geom_freqpoly(stat= "Identity")
Frage mich, was der Unterschied ist und was das stat=Identity soll. Hab dazu nichts aussagekräftiges finden können. Vielen Dank für deine Hilfe! :)

Gruß,
Max

Antworten