einzelne Datenpunkte auswählen

Allgemeine Fragen zur Programmierung mit R.

einzelne Datenpunkte auswählen

Beitragvon Tsamsiyu » Mi 4. Apr 2018, 19:06

Moin,

ich habe bei meinen Daten eine größere Tabelle, die ich aber jeweils nur teilweise zurodnen möchte. Dabei sind in dieser Tabelle verschiedene Arten (in der Spalte "Taxon"), wie Tiger, Leoparden, Löwen, etc.. Ich bekomme es grad nicht mehr zusammen, wie ich bei der Zuordnung nur die Datenreihen auswählen kann, die als Art z.B. Tiger haben. Momentan sieht es so aus:

Code: Alles auswählen
tiger<-read.table(file = "C:/[...]/Data_All.txt", header=T, sep=";")


Der Spaltenname ist wie gesagt "Taxon", kann ich das direkt bei read.table mit einbauen?
Tsamsiyu
 
Beiträge: 32
Registriert: Mo 13. Jun 2016, 16:42
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: einzelne Datenpunkte auswählen

Beitragvon jogo » Mi 4. Apr 2018, 20:25

jogo
 
Beiträge: 93
Registriert: Mo 26. Feb 2018, 09:56
Danke gegeben: 3
Danke bekommen: 0 mal in 0 Post

Re: einzelne Datenpunkte auswählen

Beitragvon Tsamsiyu » Mi 4. Apr 2018, 21:00

Ne, das hilft mir leider nicht wirklich weiter. Es gab meine ich eine Funktion, bei der man sagen konnte, nehme nur die Zeilen, bei denen in der ersten Reihe XXX steht. Ich weiß nicht mehr wie es genau ging, irwie mit

== 'XXX'


oder auch " statt '

Ich weiß leider nicht mehr wie der Befehl genau war.

Edit:
Ich weiß nicht ob es hilft, aber ich hab in meinen alten Daten das gefunden, von dem ich dachte wie ich es gemacht habe:

Code: Alles auswählen
tiger<-read.table(file = "C:/[...]/Data_All.txt", header=T, sep=";")
attach(tiger)
tiger2<-Taxon=="Panthera tigris"


Leider musste ich feststellen, dass er mir damit nur eine eine Datenreihe mit "true" und "false" erstellt.
Ich muss sie wohl alle einzeln manuell reinladen.
Tsamsiyu
 
Beiträge: 32
Registriert: Mo 13. Jun 2016, 16:42
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: einzelne Datenpunkte auswählen

Beitragvon jogo » Mi 4. Apr 2018, 22:48

Hallo Tsamsiyu,

Code: Alles auswählen
tiger <- read.table(file = "C:/[...]/Data_All.txt", header=TRUE, sep=";")
tiger2 <- subset(tiger, Taxon=="Panthera tigris")

bzw.
Code: Alles auswählen
tiger2 <- tiger[ tiger$Taxon=="Panthera tigris", ]

Wenn Du die Daten nach Taxonen trennen möchtest, kannst Du mit
Code: Alles auswählen
L <- split(tiger, tiger$Taxon)
eine Liste L von Dataframes erstellen, auf die man für eine Auswertung die Funktionen lapply() oder sapply() anwenden kann.

Gruß, Jörg
jogo
 
Beiträge: 93
Registriert: Mo 26. Feb 2018, 09:56
Danke gegeben: 3
Danke bekommen: 0 mal in 0 Post

Re: einzelne Datenpunkte auswählen

Beitragvon Tsamsiyu » Mi 11. Apr 2018, 16:10

jogo hat geschrieben:Hallo Tsamsiyu,

Code: Alles auswählen
tiger <- read.table(file = "C:/[...]/Data_All.txt", header=TRUE, sep=";")
tiger2 <- subset(tiger, Taxon=="Panthera tigris")

bzw.
Code: Alles auswählen
tiger2 <- tiger[ tiger$Taxon=="Panthera tigris", ]

Wenn Du die Daten nach Taxonen trennen möchtest, kannst Du mit
Code: Alles auswählen
L <- split(tiger, tiger$Taxon)
eine Liste L von Dataframes erstellen, auf die man für eine Auswertung die Funktionen lapply() oder sapply() anwenden kann.

Gruß, Jörg


Hab das Komma am Ende nicht drinne gehabt, damit läufts danke. Was macht subset genau?
Tsamsiyu
 
Beiträge: 32
Registriert: Mo 13. Jun 2016, 16:42
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: einzelne Datenpunkte auswählen

Beitragvon jogo » Do 12. Apr 2018, 21:29

Tsamsiyu hat geschrieben:Hab das Komma am Ende nicht drinne gehabt, damit läufts danke. Was macht subset genau?
subset() macht das, was in der Dokumentation beschrieben ist:
Code: Alles auswählen
help("subset")
und was man sich in Form von Beispielen vorführen lassen kann:
Code: Alles auswählen
example("subset")

BTW: Das sind genau die Beispiele, die in der Dokumentation am Ende im Abschnitt Examples stehen.

subset() erzeugt eine Untermenge der Daten (sowohl bezüglich der Beobachtungen, als auch bezüglich der Variablen/Spalten, falls es sich um einen Dataframe handelt). Aber auch auf andere geeignete Objekte kann subset() angewendet werden - habe ich aber bisher selten gesehen und selbst bisher nicht eingesetzt.

Gruß, Jörg
jogo
 
Beiträge: 93
Registriert: Mo 26. Feb 2018, 09:56
Danke gegeben: 3
Danke bekommen: 0 mal in 0 Post


Zurück zu Programmierung allgemein

Wer ist online?

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

cron