Fälle löschen
-
- Beiträge: 10
- Registriert: 19.02.2014, 13:28
Fälle löschen
Hallo zusammen,
wie kann ich Fälle löschen, die mehr als 70 missing values haben?
Danke und viele Grüße
wie kann ich Fälle löschen, die mehr als 70 missing values haben?
Danke und viele Grüße
-
- Beiträge: 38
- Registriert: 24.02.2014, 12:10
Hallo
Ich hoffe, ich habe dich richtig verstanden.
Unter Transform>count values within cases kreierst du eine neue Variable. Bei der nummerischen Variable fügst du alles zu, was du mitgezählt haben willst. Den zu zählenden Wert definierst du als "missing" (System- oder User-Missing, nach deinen Bedürfnissen). Dann unter Data>sort cases die Fälle nach der eben erstellten Variable sortieren und im Datenfenster dann die Fälle löschen, die über 70 missing values haben.
Beste Grüsse
Ich hoffe, ich habe dich richtig verstanden.
Unter Transform>count values within cases kreierst du eine neue Variable. Bei der nummerischen Variable fügst du alles zu, was du mitgezählt haben willst. Den zu zählenden Wert definierst du als "missing" (System- oder User-Missing, nach deinen Bedürfnissen). Dann unter Data>sort cases die Fälle nach der eben erstellten Variable sortieren und im Datenfenster dann die Fälle löschen, die über 70 missing values haben.
Beste Grüsse
-
- Beiträge: 10
- Registriert: 19.02.2014, 13:28
Hallo Nemo,
danke für deine Hilfe. Es geht genau darum, aber ich habs leider trotzdem nicht hinbekommen
Ich bin über Transformieren -> Werten in Fällen zäheln -> Werte definieren: bei Wert 70 eingetragen, hinzufügen -> Zielvariable als Missingsover70 bezeichnet, ach so und vorher alle numerischen Variablen rüberzogen.
Oder muss ich unter Fall etwas definieren? Sorry ich verstehs nicht;-)
danke für deine Hilfe. Es geht genau darum, aber ich habs leider trotzdem nicht hinbekommen
Ich bin über Transformieren -> Werten in Fällen zäheln -> Werte definieren: bei Wert 70 eingetragen, hinzufügen -> Zielvariable als Missingsover70 bezeichnet, ach so und vorher alle numerischen Variablen rüberzogen.
Oder muss ich unter Fall etwas definieren? Sorry ich verstehs nicht;-)
-
- Beiträge: 38
- Registriert: 24.02.2014, 12:10
Kein Ding, mein Deutsch ist nicht das beste
So wie ich das sehe, bist du schon ganz nah dran.
Fast alles richtig gemacht, aaaaber bei "Werte definieren" wählst du "System- or User-Missing" an.
Beim Namen der Variable würde ich die 70 erst mal rauslassen. "Missing_overall" oder "Missing_count". Unter "Fall" musst du nichts definieren
Die neue Variable gibt dir die Anzahl fehlender Werte im jeweiligen Fall an (unabhängig ob mehr oder weniger als 70).
Wenn dieser erste Schritt klappt, hast du das gröbste hinter dir
---
Dann sortierst du die Fälle nach der neu erstellten Variable und kannst dann von Hand löschen
Ich persönlich bin immer vorsichtig, wenns ums Löschen geht. Darum würde ich die Fälle mit >70 missings einfach nur ausblenden. Sie sind zwar noch da, man sieht sie aber nicht und sie werden beim Rechnen auch nicht berücksichtigt. Dazu müsstest du aber eine zweite Variable erstellen. Ich warte jetzt aber erst mal auf dein Feeback zu Schritt 1
So wie ich das sehe, bist du schon ganz nah dran.
Fast alles richtig gemacht, aaaaber bei "Werte definieren" wählst du "System- or User-Missing" an.
Beim Namen der Variable würde ich die 70 erst mal rauslassen. "Missing_overall" oder "Missing_count". Unter "Fall" musst du nichts definieren
Die neue Variable gibt dir die Anzahl fehlender Werte im jeweiligen Fall an (unabhängig ob mehr oder weniger als 70).
Wenn dieser erste Schritt klappt, hast du das gröbste hinter dir
---
Dann sortierst du die Fälle nach der neu erstellten Variable und kannst dann von Hand löschen
Ich persönlich bin immer vorsichtig, wenns ums Löschen geht. Darum würde ich die Fälle mit >70 missings einfach nur ausblenden. Sie sind zwar noch da, man sieht sie aber nicht und sie werden beim Rechnen auch nicht berücksichtigt. Dazu müsstest du aber eine zweite Variable erstellen. Ich warte jetzt aber erst mal auf dein Feeback zu Schritt 1
-
- Beiträge: 38
- Registriert: 24.02.2014, 12:10
Das freut mich, dass das so toll geklappt hat.
Die Idee ist jetzt, dass du im ersten Schritt eine weitere Variable ("Missingsover70") erstellst, welche die Werte 1 und 0 animmt.
<= 70 missings -->0
>70 missings --> 1
In einem zweiten Schritt sagst du dem spss, dass es alle Fälle mit "missingsover70"=1 verstecken soll
---
1. Transform>Recode into different variables
-Die vorhin erstellte Variable auswählen
-rechts bei der Output-Variable "Missingsover70" eintragen und mit "ändern" bestätigen
-alte und neue Werte wählen
-"Range, lowest through value" anwählen (das drittunterste) und 70 eintragen
-als neuen Wert "0" eintippen und mit "Add" hinzufügen
-"all other values" anwählen, als neuen Wert "1" eintippen und wieder mit "Add" hinzufügen
-dann ok und ok klicken und die Variable ist erstellt.
-----
2. Daten>Fälle auswählen
-"if condition satisfied" anwählen
-unter "if" wählst du "missingsover70" an und setzt die Bedingung =1
- zwei mal bestätigen und fertig
Auch naheliegend wäre, die Datei nach löschen der cases neu ab zu speichern, damit sie nicht gänzlich weg sind, aber trotzdem nicht im Weg stehen.
Beste Grüsse
Die Idee ist jetzt, dass du im ersten Schritt eine weitere Variable ("Missingsover70") erstellst, welche die Werte 1 und 0 animmt.
<= 70 missings -->0
>70 missings --> 1
In einem zweiten Schritt sagst du dem spss, dass es alle Fälle mit "missingsover70"=1 verstecken soll
---
1. Transform>Recode into different variables
-Die vorhin erstellte Variable auswählen
-rechts bei der Output-Variable "Missingsover70" eintragen und mit "ändern" bestätigen
-alte und neue Werte wählen
-"Range, lowest through value" anwählen (das drittunterste) und 70 eintragen
-als neuen Wert "0" eintippen und mit "Add" hinzufügen
-"all other values" anwählen, als neuen Wert "1" eintippen und wieder mit "Add" hinzufügen
-dann ok und ok klicken und die Variable ist erstellt.
-----
2. Daten>Fälle auswählen
-"if condition satisfied" anwählen
-unter "if" wählst du "missingsover70" an und setzt die Bedingung =1
- zwei mal bestätigen und fertig
Auch naheliegend wäre, die Datei nach löschen der cases neu ab zu speichern, damit sie nicht gänzlich weg sind, aber trotzdem nicht im Weg stehen.
Beste Grüsse
-
- Beiträge: 10
- Registriert: 19.02.2014, 13:28
Mein Problem mit den missings hört leider nicht auf...
1. obiges Vorgehen hat super geklappt
2. Problem jetzt: Es gibt ja unterschiedliche Missings...
Beispiel 1: Rauchen Sie ja/nein? Ist eine Person Nichtraucher, braucht die Person alle weiteren Fragen nicht zu beantworten. Die Fragen die bei Rauchern folgen, sind bei den Nichtrauchern Missings.
Beispiel 2: Missings aufgrund mangelnder Motivation oder wie auch immer, fehlen und werden mit 99 oder ähnlichen codiert.
Meine Fragen jetzt: Wie unterscheide ich oben genannte Missings, weil sie kommen ja nicht getrennt vor, sondern in 1 Item vor und
2. muss ich dann erst diese missings unterschiedlich codieren und dann oben genannten Filter für die Fälle setzen??
Ist es richtig zunächst nachfolgenden Befehl einzugeben und dann erst den Filter Missingsover70 zu setzen?
IF (Rauchen ja nein Alkohol ja nein= 1)
missings1=NMISS(Var etc...
Wäre dir für deine Hilfe super dankbar. Bisher konnte mir noch kein Forum weiterhelfen.
1. obiges Vorgehen hat super geklappt
2. Problem jetzt: Es gibt ja unterschiedliche Missings...
Beispiel 1: Rauchen Sie ja/nein? Ist eine Person Nichtraucher, braucht die Person alle weiteren Fragen nicht zu beantworten. Die Fragen die bei Rauchern folgen, sind bei den Nichtrauchern Missings.
Beispiel 2: Missings aufgrund mangelnder Motivation oder wie auch immer, fehlen und werden mit 99 oder ähnlichen codiert.
Meine Fragen jetzt: Wie unterscheide ich oben genannte Missings, weil sie kommen ja nicht getrennt vor, sondern in 1 Item vor und
2. muss ich dann erst diese missings unterschiedlich codieren und dann oben genannten Filter für die Fälle setzen??
Ist es richtig zunächst nachfolgenden Befehl einzugeben und dann erst den Filter Missingsover70 zu setzen?
IF (Rauchen ja nein Alkohol ja nein= 1)
missings1=NMISS(Var etc...
Wäre dir für deine Hilfe super dankbar. Bisher konnte mir noch kein Forum weiterhelfen.
-
- Beiträge: 38
- Registriert: 24.02.2014, 12:10
Hey
Mit der "If"-Funktion schliesst du ganze Fälle aus, was nicht das Ziel ist. Du willst ja eigentlich nur, dass User-Missings gezählt werden und System Missings eben nicht.
Wenn ich dich richtig verstanden habe und
User-Missing=99
System-Missing=.
dann ist das Problem aus meiner Sicht eigentlich schon fast gelöst. Die Variable, die die User-Missings zählen soll, darf dann nicht mehr die "Missings" zählen, sondern eben die "99". Ich hoffe das klappt.
Ansonsten gibt es noch die Bastellösung:
-1. Zählvariable mit "System- or User-Missing" erstellen
-2. Zählvariable mit "System-Missing" erstellen
-unter "Transform>compute Variable" die Differenz der 1. und 2. Zählvariable als neue Variable erstellen (Die zählt folglich nur die User-Missing)
Beste Grüsse
Mit der "If"-Funktion schliesst du ganze Fälle aus, was nicht das Ziel ist. Du willst ja eigentlich nur, dass User-Missings gezählt werden und System Missings eben nicht.
Wenn ich dich richtig verstanden habe und
User-Missing=99
System-Missing=.
dann ist das Problem aus meiner Sicht eigentlich schon fast gelöst. Die Variable, die die User-Missings zählen soll, darf dann nicht mehr die "Missings" zählen, sondern eben die "99". Ich hoffe das klappt.
Ansonsten gibt es noch die Bastellösung:
-1. Zählvariable mit "System- or User-Missing" erstellen
-2. Zählvariable mit "System-Missing" erstellen
-unter "Transform>compute Variable" die Differenz der 1. und 2. Zählvariable als neue Variable erstellen (Die zählt folglich nur die User-Missing)
Beste Grüsse