Nicht passende Datensätze löschen

Wie erweitere ich R um eigene Funktionen oder Pakete? Welches Paket ist passend für meine Fragestellung?

Moderatoren: EDi, jogo

Antworten
csberlin
Beiträge: 4
Registriert: So Okt 14, 2018 8:46 am

Nicht passende Datensätze löschen

Beitrag von csberlin » So Okt 14, 2018 8:57 am

Hallo,

ich habe folgendes Problem. Ich habe eine Umfrage erstellt und hatte 166 Teilnehmer. Davon waren 12 unvollständig diese habe ich auch mit

Code: Alles auswählen

daten <-  subset(data, subset = !is.na(submitdate))
entfernt. Ich habe dann 4 Teilnehmer, die unter 18 sind. Diese möchte ich auch nicht in meiner Datenauswertung haben. Ich habe diese mit folgendem Befehl versucht zu entfernen:

Code: Alles auswählen

daten<- subset(data,data$Alter > 17)
Allerdings scheint das nicht zu funktionieren, da ich dann immer noch 154 Datensätze habe. Da sind aber nur die unvollständigen abgezogen. Ich habe dann noch diesen Befehl versucht:

Code: Alles auswählen

Alter<-length(df$id(df$Alter=="15-17Jahre"))
und anschließend

Code: Alles auswählen

df<-df(-which(df$Alter=="15-17Jahre", arr.ind=TRUE),)
Da kommt aber die Fehlermeldung, dass irgendein Closure nicht gefunden wurde.

Ich habe auch noch einen Datensatz bei dem das Geschlecht nicht angegeben wurde. Der müsste ebenfalls gelöscht werden sowie einen mit einer sehr hohen Zahl.
Zuletzt geändert von jogo am So Okt 14, 2018 10:59 am, insgesamt 1-mal geändert.
Grund: Code formatiert

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

Re: Nicht passende Datensätze löschen

Beitrag von jogo » So Okt 14, 2018 11:05 am

Hallo csberlin,

willkommen im Forum!
csberlin hat geschrieben:
So Okt 14, 2018 8:57 am
ich habe folgendes Problem. Ich habe eine Umfrage erstellt und hatte 166 Teilnehmer. Davon waren 12 unvollständig diese habe ich auch mit

Code: Alles auswählen

daten <-  subset(data, subset = !is.na(submitdate))
entfernt. Ich habe dann 4 Teilnehmer, die unter 18 sind. Diese möchte ich auch nicht in meiner Datenauswertung haben. Ich habe diese mit folgendem Befehl versucht zu entfernen:

Code: Alles auswählen

daten<- subset(data,data$Alter > 17)
Und warum nicht einfach in einem Abwasch?

Code: Alles auswählen

daten <-  subset(data, !is.na(submitdate) & (Alter > 17))
Ich habe auch noch einen Datensatz bei dem das Geschlecht nicht angegeben wurde. Der müsste ebenfalls gelöscht werden sowie einen mit einer sehr hohen Zahl.
Kannst Du bitte mal die Ergebnisse von

Code: Alles auswählen

str(data)
summary(data)
in Deine nächste Nachricht schreiben? Oder heißt Dein Dataframe df und nicht data - in Deiner Nachricht gibt beide Objekte. :o

Bitte lies vorher viewtopic.php?f=20&t=29 :!:

Gruß, Jörg

csberlin
Beiträge: 4
Registriert: So Okt 14, 2018 8:46 am

Re: Nicht passende Datensätze löschen

Beitrag von csberlin » So Okt 14, 2018 3:41 pm

Hallo, vielen Dank erstmal für deine Hilfe.

Das ist das Ergebnis was bei dem Datensatz von dir rauskam:

chr "-which(data$Alter == \"15-17 Jahre\", ara.ind = TRUE)"
Length Class Mode
1 character character

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

Re: Nicht passende Datensätze löschen

Beitrag von jogo » So Okt 14, 2018 6:09 pm

Hallo csberlin,

dann hilft nur ein reproduzierbares Beispiel. Bitte lies dazu viewtopic.php?f=20&t=11
oder auch https://stackoverflow.com/questions/596 ... le-example

Mindestens benötigen wir Informationen über die Struktur des Objektes, also den Output von

Code: Alles auswählen

str(data)
Gruß, Jörg

csberlin
Beiträge: 4
Registriert: So Okt 14, 2018 8:46 am

Re: Nicht passende Datensätze löschen

Beitrag von csberlin » So Okt 14, 2018 6:28 pm

Mit der Lösung oben hat es für das Alter auf jeden Fall geklappt.

Ich habe jetzt noch diesen einen Datensatz wo jemand keine Angabe zum Geschlecht gemacht und da weiß ich auch nicht, wie ich das herausbekommen soll.Vielleicht hat dazu jemand einen Tipp.

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

Re: Nicht passende Datensätze löschen

Beitrag von EDi » Mo Okt 15, 2018 6:53 am

Kommt drauf an wie 'keine Angabe' kodiert ist. Wenn's NA sind, dann is.na() ansonsten '==' verwenden.
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.

csberlin
Beiträge: 4
Registriert: So Okt 14, 2018 8:46 am

Re: Nicht passende Datensätze löschen

Beitrag von csberlin » Mo Okt 15, 2018 8:12 am

Vielen Dank.

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste