Seite 1 von 1

Neue Spalte berechnen

Verfasst: So Jun 09, 2019 9:21 pm
von Helene=)
Hallo zusammen,

ich bin noch recht unerfahren mit R und gelange so langsam an meine Grenzen und hoffe, dass ihr mir weiterhelfen könnt.

Ich habe einen Datensatz mit 3490 Beobachtungen und 590 Variablen, jetzt möchte ich gerne eine weitere Variable berechnen. Ich habe es mit folgendem Befehl versucht:

Code: Alles auswählen

Datensatz <- mutate(Datensatz, 'Stundenlohn' = 'Nettoeinkommen':('Stundenanzahl' *4,35))
RStudio spukt mir folgende Fehlermeldung aus:

Code: Alles auswählen

Error in "Nettoeinkommen":"Stundenanzahl" : NA/NaN argument
In addition: Warning messages:
1: NAs introduced by coercion 
2: NAs introduced by coercion 
Ich möchte aus dem Datensatz die NA's für die Variablen Nettoeinkommen und Stundenanzahl nicht rausnehmen. Am liebsten wäre es mir wenn er dann für den Stundenlohn auch NA ausgibt und nur den Rest berechnet.

Habt ihr eine Idee wie ich das umsetzen kann? Falls ja, schon mal vielen Dank für eure Hilfe!!

Re: Neue Spalte berechnen

Verfasst: So Jun 09, 2019 9:25 pm
von bigben
Wie wäre

Code: Alles auswählen

Datensatz <- data.frame(ID = 1:5, 
                        Nettoeinkommen = c(40000, 50000, 60000, NA, NA),
                        Stundenanzahl = c(20, 25, 30, 40, NA))

Datensatz$Stundenlohn <- Datensatz$Nettoeinkommen/(Datensatz$Stundenanzahl * 4.35)

print(Datensatz)
LG,
Bernhard

Re: Neue Spalte berechnen

Verfasst: So Jun 09, 2019 9:36 pm
von Helene=)
Danke Bernhard!
Aber leider muss ich jetzt feststellen, dass in R die Stundenanzahl categorical und nicht numeric ist.
Muss ich den Datensatz dann neu einlesen oder gibt es einen Befehl, der dass ändert?

LG Helene =)

Re: Neue Spalte berechnen

Verfasst: So Jun 09, 2019 11:19 pm
von bigben
Meist ist das ein Fehler beim Einlesen, der nicht einfach durch den Befehl as.numeric() zu beheben ist. Was hast Du denn wie eingelesen?

Re: Neue Spalte berechnen

Verfasst: Mo Jun 10, 2019 7:41 pm
von Helene=)
Ich hatte es befürchtet. Ich habe die Daten nun erneut eingelesen und konnte die gewünschte Spalte hinzufügen. Vielen Dank!!

Zur Vollständigkeit hier der Befehl zum Import, den ich genutzt habe:

Code: Alles auswählen

Datensatz <- read_delim("C:/Dokumente/Untersuchung/Datensatz.csv", 
                  +     ";", escape_double = FALSE, col_types = cols(age = col_number()), 
                  +     locale = locale(decimal_mark = ","), 
                  +     na = "NA", trim_ws = TRUE)
LG Helene =)