Hilfe bei Datenverarbeitung
Hilfe bei Datenverarbeitung
Hallo zusammen!
Ich habe mich extra hier angemeldet, da ich mit dem Programm am verzweifeln bin.
Für mein Studium soll ich eine statistische Untersuchung mit R durchführen.
Das dazugehörige Seminar war...naja. Ich habe weder eine Einführung in R erhalten noch in Statistik (Kursbezeichnung: Einführung in Statistik anhand von R)
Wie auch immer..jetzt zu meinem Problem (zumindest zum Ersten), dass wahrscheinlich für euch Profis ein Kinderspiel ist:
Ich habe in meinem Datensatz die Einkommen von rund 3000 Personen, etwa 1000 haben die Angabe verweigert. Ich würde diese gerne vorerst ausschließen. Mit welchem Befehl kann ich diese Gruppe ausschließen? Also einen neuen "Value" erstellen, der nur tatsächliche Angaben enthällt.
Hoffe ihr könnt mir helfen!
Gruß
Ich habe mich extra hier angemeldet, da ich mit dem Programm am verzweifeln bin.
Für mein Studium soll ich eine statistische Untersuchung mit R durchführen.
Das dazugehörige Seminar war...naja. Ich habe weder eine Einführung in R erhalten noch in Statistik (Kursbezeichnung: Einführung in Statistik anhand von R)
Wie auch immer..jetzt zu meinem Problem (zumindest zum Ersten), dass wahrscheinlich für euch Profis ein Kinderspiel ist:
Ich habe in meinem Datensatz die Einkommen von rund 3000 Personen, etwa 1000 haben die Angabe verweigert. Ich würde diese gerne vorerst ausschließen. Mit welchem Befehl kann ich diese Gruppe ausschließen? Also einen neuen "Value" erstellen, der nur tatsächliche Angaben enthällt.
Hoffe ihr könnt mir helfen!
Gruß
Re: Hilfe bei Datenverarbeitung
Ich denke die Funktionen ?is.na(), sowie vielleicht ?`[`könnten hilfreich sein.
Genauso wie der ?Logic Operator '!'.
Genauso wie der ?Logic Operator '!'.
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
.
Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
.
Re: Hilfe bei Datenverarbeitung
Hallo guy2,
schade, dass es nicht mit den Seminar oder überhaupt einer Statistikvorlesung geklappt hat. Aber vielleicht kannst Du ja ein wenig nachholen? Eine Einführung in R findest Du hier. Für den gelegentlichen Anwender ist möglicherweise auch der R-Commander interessant!
Viel Erfolg!
schade, dass es nicht mit den Seminar oder überhaupt einer Statistikvorlesung geklappt hat. Aber vielleicht kannst Du ja ein wenig nachholen? Eine Einführung in R findest Du hier. Für den gelegentlichen Anwender ist möglicherweise auch der R-Commander interessant!
Viel Erfolg!
Viele Grüße,
Student
-----------------------------------------------------------------------------------------------------------------------
faes.de, Datenanalyse mit R & das Ad-Oculos-Projekt
Das Ad-Oculos-Projekt auf YouTube
Habe Mut, dich deines eigenen Verstandes zu bedienen! (Kant)
Student
-----------------------------------------------------------------------------------------------------------------------
faes.de, Datenanalyse mit R & das Ad-Oculos-Projekt
Das Ad-Oculos-Projekt auf YouTube
Habe Mut, dich deines eigenen Verstandes zu bedienen! (Kant)
Re: Hilfe bei Datenverarbeitung
Danke schon mal für die Antworten.
Aber das sind genau solche Sachen die mich zur Weißglut treiben:
Komplette Tabelle:
table(income2) -> Tabelle mit >3000 Werten wird angezeigt, soweit so gut
Jetzt ohne "Verweigerer"
table (income2 !=99999) -> 1000 FALSE , 2000 TRUE
Wie bringe ich dieses atemberaubende Programm dazu mir wieder eine Tabelle mit Werten anzuzeigen?
Aber das sind genau solche Sachen die mich zur Weißglut treiben:
Komplette Tabelle:
table(income2) -> Tabelle mit >3000 Werten wird angezeigt, soweit so gut
Jetzt ohne "Verweigerer"
table (income2 !=99999) -> 1000 FALSE , 2000 TRUE
Wie bringe ich dieses atemberaubende Programm dazu mir wieder eine Tabelle mit Werten anzuzeigen?
Re: Hilfe bei Datenverarbeitung
Bitte ein reproduzierbares Beispiel posten.
Ist income2 ein vektor?
Dann
um die 99999 werte auszuschließen
bzw.
um die Häufigkeiten darin zu sehen.
Ist income2 ein vektor?
Dann
Code: Alles auswählen
income2[income2 !=99999]
bzw.
Code: Alles auswählen
table(income2[income2 !=99999])
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
.
Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
.
Re: Hilfe bei Datenverarbeitung
Vielen Dank, genau das habe ich gesucht....
Wenn ich nun noch einen weiteren Wert dort ausschließen muss, würde das doch über den logischen Operator "&" laufen,oder?
also:
table(income2[income2 !=99997&99999]
Nun ja, anscheinend nicht.. ich versteh die Logik hinter dem Programm nicht.
In Wort würde die Formel doch heißen:
"Tabelle mit Einkommen, wobei Einkommen ungleich 99997 & 99999"
Was meinst du mit reproduzierbares Beispiel?
Ich habe eine Tabelle in denen Einkommen angegeben wurden und jeweils Leute die dieses haben:
Bsp:
1111€ -> 1 Person
1300€ -> 3 Personen
...
...
99997-> 1030 Personen
99999-> 27 Personen
(auf der Euroseite kommen nachher die Werte 99999 und 99997, das sind dann "Verweigerer" und "Keine Angabe")
Ich muss die Werte erst mal ausschließen, damit ich damit rechnen kann.
Wie definieren sich denn Vektoren in R? Vektor gibt doch eine Richtung vor.
Ich habe eine Ordinale Tabelle wobei X-Werte das Einkommen beschreiben von gering nach hoch und die Y-Werte mit der Anzahl der Personen.
PS. Sry wenn ich mich so blöd hier anstelle Das ist nicht wirklich mein Fachgebiet und mit Programiersprache habe ich keinerlei Erfahrung...gucke zwar nach Tutorials aber das hilft nur bedingt
Wenn ich nun noch einen weiteren Wert dort ausschließen muss, würde das doch über den logischen Operator "&" laufen,oder?
also:
table(income2[income2 !=99997&99999]
Nun ja, anscheinend nicht.. ich versteh die Logik hinter dem Programm nicht.
In Wort würde die Formel doch heißen:
"Tabelle mit Einkommen, wobei Einkommen ungleich 99997 & 99999"
Was meinst du mit reproduzierbares Beispiel?
Ich habe eine Tabelle in denen Einkommen angegeben wurden und jeweils Leute die dieses haben:
Bsp:
1111€ -> 1 Person
1300€ -> 3 Personen
...
...
99997-> 1030 Personen
99999-> 27 Personen
(auf der Euroseite kommen nachher die Werte 99999 und 99997, das sind dann "Verweigerer" und "Keine Angabe")
Ich muss die Werte erst mal ausschließen, damit ich damit rechnen kann.
Wie definieren sich denn Vektoren in R? Vektor gibt doch eine Richtung vor.
Ich habe eine Ordinale Tabelle wobei X-Werte das Einkommen beschreiben von gering nach hoch und die Y-Werte mit der Anzahl der Personen.
PS. Sry wenn ich mich so blöd hier anstelle Das ist nicht wirklich mein Fachgebiet und mit Programiersprache habe ich keinerlei Erfahrung...gucke zwar nach Tutorials aber das hilft nur bedingt
Re: Hilfe bei Datenverarbeitung
Hi!
Vektoren gibt es nicht nur in der Geometrie, eine einfache Zahlenreihe heißt in R Vector. Statistiken rechnet man oft über Daten in Tabellen. Das sind dann mehrere zusammengehörige vectors, die heißen in R dataframe. Du wirst Dir ein Einführungstutorial in R antun müssen, wenn Du in R ein wenig mehr als nur Daten auswählen möchtest.
Zum Thema reproduzierbares Beispiel siehe beispielsweise https://stackoverflow.com/help/mcve
Nach Deinem ersten Post hast Du eine fehlleitende Antwort bekommen, weil wir nicht wissen konnten, dass fehlende Angaben als 9999 codiert sind. In R codiert man sowas als NA.
Ein reproduzierbares Beispiel könnte so aussehen:
Wenn man sich in diese Notation mit den eckigen Klammern mal eingefunden hat, ist sie phantastisch. Für Anfänger und R-fremde kann es leichter lesbar sein, wenn man die Funktion subset() verwendet. Beispielsweise so:
Wenn es sehr viele spezielle Codes wie 99997 und 99999 gibt, kann es übersichtlich sein, den Operator %in% und das Ausrufezeichen als logisches "Nicht" miteinander zu verbinden, wie in
HTH,
Bernhard
Vektoren gibt es nicht nur in der Geometrie, eine einfache Zahlenreihe heißt in R Vector. Statistiken rechnet man oft über Daten in Tabellen. Das sind dann mehrere zusammengehörige vectors, die heißen in R dataframe. Du wirst Dir ein Einführungstutorial in R antun müssen, wenn Du in R ein wenig mehr als nur Daten auswählen möchtest.
Zum Thema reproduzierbares Beispiel siehe beispielsweise https://stackoverflow.com/help/mcve
Nach Deinem ersten Post hast Du eine fehlleitende Antwort bekommen, weil wir nicht wissen konnten, dass fehlende Angaben als 9999 codiert sind. In R codiert man sowas als NA.
Ein reproduzierbares Beispiel könnte so aussehen:
Code: Alles auswählen
income <- c(1000, 2000, 3000, 99999, 99997, 40000)
income.bereinigt <- income[income!=99999 & income!=99997]
print(income.bereinigt)
Code: Alles auswählen
income <- c(1000, 2000, 3000, 99999, 99997, 40000)
income.bereinigt <- subset(income, income < 99990)
print(income.bereinigt)
Code: Alles auswählen
income <- c(1000, 2000, 3000, 99999, 99997, 40000)
income.bereinigt <- subset(income, !(income %in% c(99997, 99999)))
print(income.bereinigt)
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Re: Hilfe bei Datenverarbeitung
Hallo! Wollte mich mal für die Hilfe bedanken!
Komme leider nicht wirklich zum ausführlichen antworten, da ziemlich viel Zeit in die bearbeitung der Arbeit fließt..
Komme leider nicht wirklich zum ausführlichen antworten, da ziemlich viel Zeit in die bearbeitung der Arbeit fließt..